Linux
如何使用 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
謝謝
您可以使用
readlink
:$ readlink -f -- "$(which awk)" /usr/bin/gawk
來自
man readlink
:-f, –canonicalize 通過遞歸跟踪給定名稱的每個組件中的每個符號連結進行規範化;除了最後一個組件之外的所有組件都必須存在
我發現了另一個命令
realpath
:realpath -- "$(which awk)" #Output: /usr/bin/gawk