回答:
この単純なコマンドは、実行可能ファイルが32ビット(i386)か64ビット(amd64)かを示します。
構文:
apt-cache show $(dpkg -S /path/to/the/file | awk -F ':' '{print $1 }') | awk '/Architecture:/ {print $2}' -
例:
$ apt-cache show $(dpkg -S /usr/bin/gedit | awk -F ':' '{print $1 }') | awk '/Architecture:/ {print $2}' -
amd64
説明:
dpkg -S
コマンドは、ファイルが実際に属しているパッケージを取得します。apt-cache show package
コマンドはパッケージの詳細を表示します。その詳細から、awkはArchitectureパーツのみを取得し、stdoutにリダイレクトします。
または
このコマンドも試すことができます、
$ dpkg -l $(dpkg -S /usr/bin/gedit | awk -F ':' '{print $1 }') | awk '/ii/ {print $4}'
amd64
cut -d: -f1
ここでは短くなりますが、これはインストールされたパッケージでのみ機能し、ホームフォルダー内のランダムファイルでは機能しないことに注意してください。コマンドが空を返すxargs -r
場合には、おそらくより適切dpkg -S
です。