最近、私は多くの人々が使用するのを見ました
Sudo apt
の代わりに
Sudo apt-get
また、UbuntuはSudo apt
でインストールを指示し続けます
The program 'foo' is currently not installed. You can install it by typing:
Sudo apt install foo
(fooはアプリではなくプレースホルダーです)
コミュニティでapt-get
の代わりにapt
を使用するようになった後、apt-getは非推奨になり、bashプログラムでは使用できなくなると考え始めています。
私のbashプログラムでは、
apt-get
コマンドをapt
に置き換える必要がありますか?apt-get
は危険ですか?apt-get
は下位レベルであり、下位互換性があります。 apt
はエンドユーザーにとってより適切であり、apt-get
に存在するいくつかの追加機能を必要としない、または含むことはありません。
どちらもまったく問題ありません。 apt-get
は非推奨ではありませんが、15.10インストールは:)
編集:apt(8)のmanページから
Aptコマンドはエンドユーザーにとって快適なものであり、apt-get(8)のように後方互換性がある必要はありません。
Edit2:apt
は、apt-get
の基本的な依存関係の欠陥のいくつかを修正するために設計されました。ラッパーであるため、apt
はより高いレベルであり、下位互換性とスクリプト機能も失われます。
いいえ、apt-get
は非推奨ではありません。 apt
のmanページには、apt
対apt-get
(およびapt-cache
)についての説明があります。
スクリプトの使用法と他のAPTツールとの違い
Apt(8)コマンドラインはエンドユーザーツールとして設計されており、バージョン間で動作が変わる場合があります。下位互換性を損なわないように努めていますが、変更がインタラクティブな使用に有益と思われる場合も、これは保証されません。
Apt(8)のすべての機能は、apt-get(8)やapt-cache(8)などの専用APTツールでも利用できます。 apt(8)は、一部のオプションのデフォルト値を変更するだけです(apt.conf(5)、特にBinaryスコープを参照)。したがって、可能な限り下位互換性を維持するため、スクリプトでこれらのコマンドを使用することをお勧めします(いくつかの追加オプションを有効にして)。
apt
は次のような警告も表示します
WARNING: apt does not have a stable CLI interface. Use with caution in scripts.
パイプが検出された場合。例えば:
$ apt show python | grep Package
WARNING: apt does not have a stable CLI interface. Use with caution in scripts.
Package: python
APT-Sources: http://us.archive.ubuntu.com/ubuntu xenial/main AMD64 Packages
ご質問については、
すべてのapt-getコマンドを
apt
に置き換える必要がありますか?
いいえ、apt-get
をapt
に置き換える必要はありません。むしろ、スクリプトで使用する場合は、apt-get
に固執する必要があります。これは、安定したCLI APIがあり、下位互換性が保証されているためです。
apt-get
は危険ですか?
apt
はapt-get
と同じくらい危険です。ソフトウェアは、信頼できるソースからのみインストールする必要があります。
ubuntu 15.10で
apt
を使用できますか?
はい、できます。ここでの問題は、まだサポートされていないUbuntu 15.10を使用していることです! LTSバージョンである16.04にアップグレードしてください。
私のプログラムはまだ動作しますか?
プログラムによって、私はあなたがスクリプトを意味すると仮定します。はい、apt-get
は非推奨ではないため、引き続き機能します。実際、apt
のマニュアルページで提案されているように、下位互換性のためにスクリプトでapt-get
を使用することをお勧めします。
apt
とapt-get
は基本的に同じパッケージマネージャーであり、その機能は同じです。
違いは、apt
には、たとえばapt-cache
および見栄えの良い出力があります。
ただし、少なくともその出力を解析する場合は、apt
をスクリプトでまだ使用しないでください。これはまだ開発中であり、出力形式が変更される可能性があるためです。 Bashのタブオートコンプリートは、多くのapt
コマンドでもまだ機能していません。
どちらを使用してもかまいません。
他の回答からわかるように、apt
またはapt-get
のいずれかを使用できます。追加したいのは、数年前にapt
を試したときに、apt-get
とは異なる方法で競合を解決したことです。状況がトリッキーな場合(何かを削除する必要があったり、一部のパッケージを特定のバージョンに固定したり、パッケージをダウングレードしたり、異なるリリースのパッケージを混合して使用したり)、apt
競合を解決できませんでした。
apt-get
はこれらの状況ではるかに優れており、マイナス面もなかったため、apt
をあきらめ、代わりにapt-get
を使用し続けました。これは数年前でしたので、これは変更された可能性がありますが、同様の状況に陥った場合は、両方を試して、どちらが競合をよりよく解決できるかを確認することができます。