「apt search」から返された出力の最初のフィールドを読み取るには?

「apt search」から返された出力の最初のフィールドを読み取るには?

iインストールされているようですが、他のものはどうですか?

$ apt search * | sort -t' ' -k1 | cut -c1 | uniq
c
i
p
v

ベストアンサー1

apt searchの出力

package name/suites version architecture [state]
  description

したがって、最初の列を抽出しても有用な情報はあまり提供されません。

更新された問題を解決するあなたのコメント、「検索と確認の両方がインストールされているかどうかはどうすればわかりますか?」、次のように使用できます。

apt search $pattern | grep -A1 '\[.*installed.*\]'

$patternたとえば、システムに一致するインストール済みパッケージが表示されます。

$ apt search evdev | grep -A1 '\[.*installed.*\]'

WARNING: apt does not have a stable CLI interface. Use with caution in scripts.

evemu-tools/stable,now 2.7.0-1 amd64 [installed,automatic]
  Linux Input Event Device Emulation Library - test tools
--
joystick/stable,now 1:1.6.1-1 amd64 [installed]
  set of testing and calibration tools for joysticks
--
libevdev-build-deps/now 1.6.0+dfsg-1 all [installed,local]
  build-dependencies for libevdev
--

など。

ここで警告は関係ありません。必要な情報はすべて表示されないため、apt-cacheこれを避けることはできません。apt-cache

あなたもできます使用aptitude:

aptitude search '~i evdev`

「evdev」と一致するインストール済みパッケージが検索されます。

おすすめ記事