fileコマンドを使用して最終的な実行可能ファイルパスを見つけるには?

fileコマンドを使用して最終的な実行可能ファイルパスを見つけるには?

私はUbuntu 20.04を使用しており、通常は与えられたコマンドの最終的な実行可能パスを見つける必要があります。awkたとえば、見てみましょう。

file $(which awk)
# Output: /usr/bin/awk: symbolic link to /etc/alternatives/awk

file /etc/alternatives/awk
# Output: /etc/alternatives/awk: symbolic link to /usr/bin/gawk

私の質問は次のとおりです

file与えられたコマンドの最終パスを直接返すコマンド(またはコマンドのフラグ)はありますか?上記の例では、パスを返したいと思います。gawk

ありがとう

ベストアンサー1

あなたはそれを使用することができますreadlink

$ readlink -f -- "$(which awk)"
/usr/bin/gawk

からman readlink

-f、--正規化 指定された名前を持つすべてのコンポーネントのすべてのシンボリックリンクを繰り返し追跡して正規化します。最後のコンポーネントを除くすべてのコンポーネントが存在する必要があります。

おすすめ記事