web-dev-qa-db-ja.com

Synapticはパッケージを時間でソートできますか?

Software Centerがこれを実行できることは知っていますが([履歴]セクション)、Synapticで、パッケージをインストール/削除した時間で並べ替えるフィルター/列をまだ見つけていません。これは、たとえば、最近インストールしたものをバッチで削除するために実際に使用できましたが、名前/依存関係を思い出せませんでした。

このためにカスタムフィルター/列/プロパティ/何でも設定できますか?少なくとも、ターミナルからできるはずだと思います。そうでない場合、なぜSoftware Centerはこれを実行できるのですか?

このようなもの: See, USC can do it!

1
TreefrogInc

少なくとも、ターミナルからできるはずだと思います。

はい、それは/var/lib/dpkg/info/のタイムスタンプを見るとかなり簡単です。例えば、

 ls -lct/var/lib/dpkg/info | egrep -o "May。* \。" | 
カット-d。 -f1 | uniq |もっと

-lctはctimeで並べ替え、「5月」は探している現在の(または最近の)月、cutは単に最後の迷惑な期間を削除し、uniqは重複を削除します。これにより、次のようになります。

 ... 
 5月11日18:03libcogl-pango0:AMD64 
 5月11日18:03libcogl9:AMD64 
 5月11日18:03libcaribou0:AMD64 
 5月11日18:03libcaribou-common 
 5月11日03:35libcpufreq0 
 5月11日03:35cpufrequtils 
 ... 

5月11日の18:03にインストールされたすべてのパッケージをバッチ削除する場合は、次のようにします。

 apt-get remove `ls -lct/var/lib/dpkg/info | 
 egrep -o "May。* 18:03。* \。" | 
カット-d。 -f1 | uniq | 
 cut -d '' -f4 | tr '\ n' '' `

ここで、2番目のcutは単にパッケージ名を選択し、trは改行をスペースに変換して、apt-getに適したリストを提供します。

1
ish