Apt-get停止せずに複数のパッケージをインストール


25

apt-get installを使用してさまざまなパッケージをインストールするbashスクリプトを作成しています。ただし、次のような行がある場合は気づきます。

sudo apt-get install package1 package2 package3

いずれかのパッケージが見つからない場合、他のパッケージはインストールされません。パッケージの1つが見つからない場合でも、どうすれば続行できますか?

前もって感謝します。

回答:


18

私はapt-getオプションを提案します

sudo apt-get --ignore-missing install $list_of_packages

ただし、欠落している依存関係は無視できない--forceため、使用してもシステムが破損する可能性があることに注意してください。


1
--ignore-missingダウンロードの問題に対する回避策のみに注意してください。参照してくださいsuperuser.com/a/844627/106974
アイザックス

3
これは実際には機能しません。
レオヘック

9
for i in package1 package2 package3; do
  sudo apt-get install $i
done

5
少し残酷なパフォーマンス(パッケージの依存関係ツリーはすべての反復でゼロから構築されています)が、正常に機能するはずです。
セルジュブロスラフスキー

@blueskinがほのめかしているように、-yオプションの使用は、特にパッケージの膨大なリストをインストールするときに、操作したくない場合に適しています。
pd12

0

各パッケージを単一のコマンドではなく個別のコマンドとしてインストールします。この方法では、見つからないか他のエラーが原因でインストールに失敗した場合、他のインストールは停止しません。以下のように「for」ループを使用できます。また、-y多数のパッケージをインストールする場合は、フラグを使用することを忘れないでくださいyes。これにより、各パッケージの入力の混乱を回避できます。

INSTALL_PKGS="pk1 pk2 pk3 pk4 pk5 ... and so ... on ..pk_gogol"
for i in $INSTALL_PKGS; do
  sudo apt-get install -y $i
done

@ファビー私はあなたの満足のために明確にするためにテキストを編集しました
-blueskin

1
これは、新しい回答よりも、ここ既存の回答を編集したように見えます。¯\ _(ツ)_ /¯ごめんなさい!-1
...-ファビー
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.