回答:
オプション付きのすべてのdpkgコマンドについて知りたいですか?以下のリンクを読んでください。
DebianベースのLinuxサーバーを管理する15のdpkgコマンド
インストール済みのすべてのパッケージを一覧表示するには
ここで、「少ない」とは、既存のターミナルウィンドウで開く新しいバッファ内のパッケージのリストをスクロールするために使用される単純なテキストリーダーです。リストは、他の端末コマンドおよび出力と混合されません。「q」を押して、端末プロンプトに戻ります。詳細については、「man less」を参照してください。
dpkg -l | less
パッケージがインストールされているかどうかを確認するには:
dpkg -l {package_name}
dpkg -l vlc
パッケージがインストールされているかどうかを確認するには(たとえば、vlc
)。インストールされている場合、パッケージを起動します。
dpkg -l | grep vlc
パッケージがインストールされている場所を表示します。「-S」(大文字のS)は「検索」の略です
sudo dpkg -S {package_name}
sudo dpkg -S skype
Grepを使用して検索するには:
dpkg -l | grep {keywords}
dpkg -l | grep pdf
dpkg -l packagename
、それはパッケージが完全にインストールされていない場合でも0終了コードで返すことがありますように、 -参照:github.com/bitrise-io/bitrise/issues/433
dpkg -l | cut -d " " -f 3 | grep "^vlc"
始まるすべてのパッケージ名表示するvlc
つかいます dpkg
このコマンドはdebianパッケージマネージャーです。
以下を使用して、インストールされているすべてのパッケージをリストできます。
dpkg -l
特定のパッケージの詳細を表示するには、
dpkg -p packagename
そして、それがインストールされているかどうかを知るには、
dpkg -s packagename | grep Status
必要なソフトウェアが含まれているパッケージを確認できます
apt-cache search name*
あなたの場合、このコマンドを使用して必要なパッケージ名を検索する必要があります
apt-cache search virtual machine host
apt -qq list PACKAGE
PACKAGEがインストールされているかどうかを確認するためにも使用できます。
インストールすると[installed]
、次のようなものが出力されます(行末に):
$ apt -qq list awscli
awscli/stable,now 1.4.2-1 all [installed]
インストールされていない場合、出力は次のようになります。
$ apt -qq list awscli
awscli/stable 1.4.2-1 all
-qq
ためですか?それがなくても同じように機能するようで、そのオプションはマニュアルにありませんman apt
apt list
コマンドはまだ完全には文書化されていないようです。16.04のいくつかの簡単なテスト-q
は、それが--quiet
オプションの同義語であることを示しているようです。1つ目-q
は、「Done」という単語が印刷されるのを防ぎます。2番目は、「Listing ...」が印刷されないようにします。
Taskselの「タスク名」がクエリdpkg
やapt
クエリに表示されないため、新しい回答を書いています。他の回答の意味は不完全です(または間違っています)。
「「仮想マシンホスト」チェックボックスをオンにしたかどうか思い出せません。」
再実行後、名前のアスタリスクがあるかどうかを確認しsudo tasksel
ます。
(または、実行中の場合は「i」tasksel --list-tasks
)。
これが表示されない場合、「tasksel メタパッケージ」がインストールされていない可能性があります。
「..サーバーに対応するパッケージがあるかどうかを確認するにはどうすればよいですか?」
Virtual Machine Host taskselメタパッケージの下にインストールされているものを知りたい場合:
tasksel --list-tasks
(あなたの場合tasksel --list-tasks | grep virt
は十分です)
これにより、適切なタスク名と、インストールされているかどうかが示されます。
あなたの場合、このtaskselの名前はvirt-host
です。
「仮想マシンホストにはどのパッケージが付属していますか?」
最後のコマンドから、taskselタスク名を見つけます。
これは次のコマンドに必要です。
tasksel --task-packages virt-host
これは、名前を構成する個々のTaskselメタパッケージ(追加された '^'で示される)をリストします。
あなたの場合、それはvirt-host^
です。
適切なメタ名が見つかったら、aptを使用できます。
apt show virt-host^ | grep "Package:"
(または機能しないapt-cache show
...
場合apt show
。)
これにより、指定されたメタパッケージを構成するすべてのパッケージが表示されます。
次に:
dpkg -l {each individual pkg name listed above}
これにより、個々のパッケージがインストールされているかアンインストールされているかがわかります(2文字目:「i」ステータスはインストール済みを意味します)。task / metaパッケージの下にリストされているすべてのパッケージに対してこれを行います。
これで元の質問に答えるはずです。
サイドノート:/usr/share/tasksel/descs/ubuntu-tasks.descには、Taskselメタパッケージの説明も含まれています。あなたの場合:grep "virt" /usr/share/tasksel/descs/ubuntu-tasks.desc
適切なAPTメタパッケージ名が表示されます。(あなたの場合、これはubuntu-virt-server
)です。apt
このメタ名でコマンドを使用することもできます。
taskselパッケージを削除する場合、これは少し雑草に入ります。https://askubuntu.com/a/88897/169878または他の多くの回答を参照してください。
「meta」aptパッケージはTaskselパッケージ名と一致しないことに注意してください。詳細については、Taskselコミュニティページを参照してください。
taskselを使用して(sudo apt-get install tasksel
まだ持っていない場合)、実行しtasksel --list-tasks
ます。
taskselはタスクのリストを出力します。インストールされている各タスクの隣i
と、u
インストールされていない各タスクの隣があります。
タスクをインストールする場合は、を使用しますtasksel install <task>
。探しているタスクの名前はvirt-host
です。
ソフトウェア選択項目は「タスク」と呼ばれます。
誰かが興味を持っている場合、パッケージまたはアプリケーションのリストから自動的にインストールするか、すでにインストールされているかどうかを確認できる小さなスクリプトを作成しました。
#!/bin/bash
apt -qq list YOUR_LIST_GOES_HERE | grep -v "installed" | awk -F/ '{print $1}' > /root/list.txt
packages=$(cat /root/list.txt)
grep -q '[^[:space:]]' < /root/list.txt
CHECK_LIST=$?
if [[ $CHECK_LIST -eq 1 ]]; then
echo "Your packages are already installed"
else
echo "Installing packages"
apt-get install -y $packages
fi
それが誰かを助けることを願っています。
より簡単なソリューション:
apt list
インストールされたパッケージをリストするコマンドがあります。また、特定のパッケージを検索することもできます
apt list <package>
詳細についてはman apt
、を参照してください。正確なパッケージ名がわからない場合は、apt search
その後にその一部を使用して、関連するパッケージのリストを表示できます。
$ apt-cache policy <package-name>
、例えば$ apt-cache policy dillo