0
ビルドスクリプト(bashまたはMakefile)を改良して、必要に応じていくつかの前提条件をインストールしようとしています。パッケージがインストールされていない場合にのみパッケージのリストをインストールするにはどうすればよいですか?
私はパッケージの長いリスト(10-15)を持っています。インストールされていない場合にのみインストールします。
ビルドスクリプトはルート以外で実行されるため、sudo yum install
は必要な場合にのみ(少なくとも1つのパッケージがインストールされていない場合)のみ実行します。
私の現在の実装では明らかに最適ではない:
for PACKAGE in a b c ... ; do
yum list installed $PACKAGE >/dev/null 2>&1 || sudo yum install -q -y $PACKAGE ;
done
はどうすればこれを行うことができますか?
Yumはパッケージのリストを取得できます。ループなしで直接試しましたか? – cohenjo
パラメータとして複数のパッケージ名を指定すると、指定されたパッケージのいずれかが見つからない場合にエラーコードが返されません。たとえば、aがインストールされていてbが正しくない場合は、 "a b"は成功(0)を返します。 – sorin