事の始まり
OS X環境で使っていたVim設定を使いまわそうとして、cpsm.vimの為にBoost関連のパッケージをインストールしたけど、滅多にCentOS環境では使わないからやっぱりremoveしたい。
今回の削除対象のみなさん。
今日纏めて入れちゃったパッケージの方々。|
とxargsを上手く使いこなして一発で消したい。
$ yum list installed | grep boost
boost-date-time.x86_64 1.41.0-28.el6 @base
boost-filesystem.x86_64 1.41.0-28.el6 @base
boost-graph.x86_64 1.41.0-28.el6 @base
boost-iostreams.x86_64 1.41.0-28.el6 @base
boost-program-options.x86_64 1.41.0-28.el6 @base
boost-python.x86_64 1.41.0-28.el6 @base
boost-regex.x86_64 1.41.0-28.el6 @base
boost-serialization.x86_64 1.41.0-28.el6 @base
boost-signals.x86_64 1.41.0-28.el6 @base
boost-system.x86_64 1.41.0-28.el6 @base
sedで余計な部分を消す
sed自体は以前利用経験があるし、Vimでも利用しているので特に困らずこんな感じに削除する
$ sudo yum list installed | grep boost | sed -e 's/\ .*//' boost-date-time.x86_64 boost-filesystem.x86_64 boost-graph.x86_64 boost-iostreams.x86_64 boost-program-options.x86_64 boost-python.x86_64 boost-regex.x86_64 boost-serialization.x86_64 boost-signals.x86_64 boost-system.x86_64 boost-test.x86_64 boost-thread.x86_64 boost-wave.x86_64
問題なさそう。
xargsに渡す
$ sudo yum list installed | grep boost | sed -e 's/\ .*//' | xargs -t sudo yum -y remove sudo yum -y remove boost-date-time.x86_64 boost-filesystem.x86_64 boost-graph.x86_64 boost-iostreams.x86_64 boost-program-options.x86_64 boost-python.x86_64 boost-regex.x86_64 boost-serialization.x86_64 boost-signals.x86_64 boost-system.x86_64 boost-test.x86_64 boost-thread.x86_64 boost-wave.x86_64 読み込んだプラグイン:fastestmirror, security 削除処理の設定をしています 依存性の解決をしています --> トランザクションの確認を実行しています。 ---> Package boost-date-time.x86_64 0:1.41.0-28.el6 will be 削除 ---> Package boost-filesystem.x86_64 0:1.41.0-28.el6 will be 削除 ---> Package boost-graph.x86_64 0:1.41.0-28.el6 will be 削除 ---> Package boost-iostreams.x86_64 0:1.41.0-28.el6 will be 削除 ---> Package boost-program-options.x86_64 0:1.41.0-28.el6 will be 削除 ---> Package boost-python.x86_64 0:1.41.0-28.el6 will be 削除 ---> Package boost-regex.x86_64 0:1.41.0-28.el6 will be 削除 ---> Package boost-serialization.x86_64 0:1.41.0-28.el6 will be 削除 ---> Package boost-signals.x86_64 0:1.41.0-28.el6 will be 削除 ---> Package boost-system.x86_64 0:1.41.0-28.el6 will be 削除 ---> Package boost-test.x86_64 0:1.41.0-28.el6 will be 削除 ---> Package boost-thread.x86_64 0:1.41.0-28.el6 will be 削除 ---> Package boost-wave.x86_64 0:1.41.0-28.el6 will be 削除 --> 依存性解決を終了しました。 依存性を解決しました ============================================================================================================= パッケージ アーキテクチャ バージョン リポジトリー 容量 ============================================================================================================= 削除: boost-date-time x86_64 1.41.0-28.el6 @base 149 k boost-filesystem x86_64 1.41.0-28.el6 @base 172 k boost-graph x86_64 1.41.0-28.el6 @base 338 k boost-iostreams x86_64 1.41.0-28.el6 @base 114 k boost-program-options x86_64 1.41.0-28.el6 @base 615 k boost-python x86_64 1.41.0-28.el6 @base 649 k boost-regex x86_64 1.41.0-28.el6 @base 1.9 M boost-serialization x86_64 1.41.0-28.el6 @base 1.5 M boost-signals x86_64 1.41.0-28.el6 @base 154 k boost-system x86_64 1.41.0-28.el6 @base 24 k boost-test x86_64 1.41.0-28.el6 @base 1.6 M boost-thread x86_64 1.41.0-28.el6 @base 84 k boost-wave x86_64 1.41.0-28.el6 @base 1.2 M トランザクションの要約 ============================================================================================================= 削除 13 パッケージ インストール済み容量: 8.5 M パッケージをダウンロードしています: rpm_check_debug を実行しています トランザクションのテストを実行しています トランザクションのテストを成功しました トランザクションを実行しています 削除中 : boost-wave-1.41.0-28.el6.x86_64 1/13 削除中 : boost-filesystem-1.41.0-28.el6.x86_64 2/13 削除中 : boost-graph-1.41.0-28.el6.x86_64 3/13 削除中 : boost-regex-1.41.0-28.el6.x86_64 4/13 削除中 : boost-system-1.41.0-28.el6.x86_64 5/13 削除中 : boost-date-time-1.41.0-28.el6.x86_64 6/13 削除中 : boost-thread-1.41.0-28.el6.x86_64 7/13 削除中 : boost-program-options-1.41.0-28.el6.x86_64 8/13 削除中 : boost-serialization-1.41.0-28.el6.x86_64 9/13 削除中 : boost-signals-1.41.0-28.el6.x86_64 10/13 削除中 : boost-iostreams-1.41.0-28.el6.x86_64 11/13 削除中 : boost-test-1.41.0-28.el6.x86_64 12/13 削除中 : boost-python-1.41.0-28.el6.x86_64 13/13 Verifying : boost-python-1.41.0-28.el6.x86_64 1/13 Verifying : boost-date-time-1.41.0-28.el6.x86_64 2/13 Verifying : boost-test-1.41.0-28.el6.x86_64 3/13 Verifying : boost-iostreams-1.41.0-28.el6.x86_64 4/13 Verifying : boost-filesystem-1.41.0-28.el6.x86_64 5/13 Verifying : boost-regex-1.41.0-28.el6.x86_64 6/13 Verifying : boost-system-1.41.0-28.el6.x86_64 7/13 Verifying : boost-signals-1.41.0-28.el6.x86_64 8/13 Verifying : boost-serialization-1.41.0-28.el6.x86_64 9/13 Verifying : boost-wave-1.41.0-28.el6.x86_64 10/13 Verifying : boost-thread-1.41.0-28.el6.x86_64 11/13 Verifying : boost-graph-1.41.0-28.el6.x86_64 12/13 Verifying : boost-program-options-1.41.0-28.el6.x86_64 13/13 削除しました: boost-date-time.x86_64 0:1.41.0-28.el6 boost-filesystem.x86_64 0:1.41.0-28.el6 boost-graph.x86_64 0:1.41.0-28.el6 boost-iostreams.x86_64 0:1.41.0-28.el6 boost-program-options.x86_64 0:1.41.0-28.el6 boost-python.x86_64 0:1.41.0-28.el6 boost-regex.x86_64 0:1.41.0-28.el6 boost-serialization.x86_64 0:1.41.0-28.el6 boost-signals.x86_64 0:1.41.0-28.el6 boost-system.x86_64 0:1.41.0-28.el6 boost-test.x86_64 0:1.41.0-28.el6 boost-thread.x86_64 0:1.41.0-28.el6 boost-wave.x86_64 0:1.41.0-28.el6 完了しました!
メモ
xargs -t
でxargs実行時のコマンドを標準出力に出力できる。
xargs -n 1
でxargsに渡される引数の数を指定できる。cp
する時は-n 2
などを使うことになるだろう。