Bashスクリプトでのapt-getからzypperへの移行についていくつか質問があります。
これに相当するものは何ですか?
Sudo apt-get install curl --assume-yes
(curlはどのパッケージでもかまいません)
Zypper Cheat Sheet-openSUSE を見つけました。非常に素晴らしい!しかし、ここでの経験の声をいただければ幸いです。スクリプトでzypperを使用して、応答を必要とするものをスキップせずにすべてのプロンプトに自動的に同意したい場合の正しい方法は何ですか。
私の未経験があると、私は使いたくなるでしょう:
Sudo zypper --non-interactive --no-gpg-checks --quiet install --auto-agree-with-licenses curl
しかし、それは本当に--assume-yes
?
これらと同等のものはどうですか?
Sudo apt-get autoremove -y
Sudo apt-get autoclean -y
これ は存在しないことを示唆しています...
Gdebi-coreの代替品はありますか?あるいは、gypbiの「強力な充足可能性ソルバー」では、gdebiは必要ありませんか?古いバージョンにパッケージをインストールする必要があり、.debファイルを既に持っている(ただし、すべての依存関係ではない)場合は、gdebiを使用します。
通常、zypperを非対話的に実行する場合は、ショートカット--non-interactive
で-n
モードを使用する必要があります。
zypper -n install curl
apt-get install -y curl
から来た人には混乱するかもしれません。一部のzypperサブコマンドは、-y
/--no-confirm
のエイリアスとしてコマンド固有の-n
/--non-interactive
オプションもサポートしますが、すべてのサブコマンドがサポートするわけではありません。 install
コマンドはそれを実装しているため、このコマンドは上記と同等です。
zypper install -y curl
-y
は後にinstall
でなければならず、グローバル-n
オプションはbeforeサブコマンド(zypper install -n
は別のものを意味します。そのためのmanページをお読みください)。
[編集]以下のセクションは正確ではなくなりましたが、履歴参照のために残されています。現在のzypperは、新しいリポジトリに関連付けられたgpgキーを自動的にインポートして信頼する--gpg-auto-import-keys
オプションをサポートしています。
ドキュメントによる インタラクティブモードなしでGPGキーを受け入れる方法はありません:
新しいキーは、対話モードでのみ信頼またはインポートできます
--no-gpgp-checks
を使用しても、GPGキーは拒否されます。
スクリプトの回避策は、パイプとecho
を使用することです:
zypper addrepo http://repo.example.org my_name | echo 'a'
--non-interactiveオプションがあります。 manページから:
Switches to non-interactive mode.
In this mode zypper doesn't ask user to type answers to various prompts, but uses default answers automatically.
The behaviour of this option is somewhat different than that of options like '--yes', since zypper can answer different answers to different questions.
The answers also depend on other options like '--no-gpg-checks'.
Apt-getのautoremoveに実際の対応はありません。最も近いのは、remove
コマンドの--clean-deps
オプションです。これは、依存関係をすぐに(ただし、後でではなく)クリーンアップします。
それはサンプルです
zypper --non-interactive --quiet addrepo --refresh -p 90 http://packman.inode.at/suse/openSUSE_Leap_15.0/ 'packman'
zypper --gpg-auto-import-keys refresh
zypper --non-interactive dist-upgrade --allow-vendor-change --from packman
zypper --non-interactive install vlc vlc-codecs
もちろん、--auto-agree-with-licenses
ですが、その前後で違いがあることを忘れないでくださいinstall
これは私にとってはうまくいきました(SLES12SP3で確認):
zypper --non-interactive --quiet ar -C http://myrepo myrepo
zypper --gpg-auto-import-keys ref
注意 -C/--no-check
ために zypper ar
。
これでパッケージをインストールできます:
zypper in -y --auto-agree-with-licenses vim