私はrpm -qa | grep something
の結果を得て、私はrpm -ql result-i-got
を得た結果を1行に入れたいと思います。引数のコマンドのパイプ結果
私は仕事にこれを発見した:
rpm -ql $(rpm -qa | grep something)
のだろうか、配管の任意のより良い、あるいは別の方法は、私が上記の書いたものと同じ結果を得るために、この結果がありますか?おかげさまで
私はrpm -qa | grep something
の結果を得て、私はrpm -ql result-i-got
を得た結果を1行に入れたいと思います。引数のコマンドのパイプ結果
私は仕事にこれを発見した:
rpm -ql $(rpm -qa | grep something)
のだろうか、配管の任意のより良い、あるいは別の方法は、私が上記の書いたものと同じ結果を得るために、この結果がありますか?おかげさまで
xargs
はそのために作られています:あなたが実際にrpm -qa
にワイルドカード引数を提供することができます
rpm -qa | grep something | xargs rpm -ql
。これは、別のコマンドにパイプする必要があるので、代わりにrpm -qa | grep something
の、あなたがシェルグロブパターンとしてアスタリスクを拡大からシェルを防ぐために
rpm -qa '*something*'
使用単一引用符または二重引用符を使用することができますを回避することができます。
例:
$ rpm -qa '*vim*'
vim-enhanced-7.0.109-7.2.el5
vim-minimal-7.0.109-7.2.el5
vim-common-7.0.109-7.2.el5
上記のコマンドは、関連するパッケージ内のファイルをリストする-l
オプションと組み合わせることができます。このコマンドで
rpm -qal '*vim*'
一つの問題は、複数のパッケージが返された場合、それはへのパッケージ名が印刷されていないとして、どのパッケージに属しているファイルは明確ではないということです。パッケージ名を出力に含めるには、--queryformat
オプションを追加して、情報の印刷方法を細かく制御できます。例えば、以下の例では、そのパッケージが提供するファイルのリストが続くハイフン・マイナス記号の列で下線付きパッケージの名前、印刷します
rpm -qal --qf "\n%{NAME}\n--------\n" '*vim*'
をrpm
manページには、カスタマイズの詳細情報を持っていますコマンドの出力。
あなたは、多くの場合、このコマンドを使用して自分自身を見つける場合は、エイリアスにそれを回すことができます:
alias rpmlist='rpm -qal --qf "\n%{NAME}\n--------\n"'
ので
rpmlist '*vim*' | less
確かに別の方法です、私はあなたが提案したエイリアスを採用しましたが、私の質問の主な焦点は配管でした:)ありがとう! – Moshe
は私に非常にエレガントに見えるようにそれを使用して... –