
非対話型システム更新スクリプトを作成しようとしています。
質問:
以下が正しく機能する場合:
yes | dpkg --configure -a
次もうまくいきますか? :
yes | apt-get install --fix-broken
答え1
に-y
or--yes
または--assume-yes
パラメータがありますapt-get
。
次のことを試してください
sudo apt-get install -y <package-name>
詳細:
これapt-get マンページ(コマンドリファレンスマニュアルページを使用することもできますman apt-get
)次のように言及されています。
-y、--はい、--家庭-はい
自動的に「はい」というメッセージが表示されます。すべてのプロンプトに対する答えが「はい」であると仮定し、非対話モードで実行します。スケジュールされたパッケージを変更したり、重要なパッケージを削除したりするなど、悪いことが発生すると、apt-getは中断されます。構成項目: APT::Get::Assume-Yes.
このパラメータとは対照的に、次のこともできます。
--家庭-いいえ
すべてのプロンプトに自動的に「いいえ」と答えます。構成項目: APT::Get::Assume-No.
編集する
Vlastimilのコメントに従って試しました。
sudo apt-get install --fix-broken --assume-yes
効果がある便宜上--fix-broken
、コマンドの一部を-f
andに置き換えることができます。これは特定のパッケージをインストールするわけではありませんが、マニュアルページに記載されているように、「APTが可能な解決策を推論できるようにすべてのパッケージを省略できます」。--assume-yes
-y
--yes