在终端中显示文件的完整路径

在终端中显示文件的完整路径

我有一个文件。我想在终端中显示它的完整路径。

哪个命令会?

答案1

使用readlink标志-e。它不仅提供文件的完整路径,还提供符号链接的真实路径

$ readlink -e ./out.txt                                                                                                  
/home/xieerqi/out.txt

每当需要获取文件的完整路径时,我个人都会在自己的脚本中使用它

答案2

我找到了:

sudo apt-get install realpath

然后:

realpath MY_FILE

答案3

如果您不知道文件的位置,请使用find命令。

find / -name MY_FILE

它将打印MY_FILE从 开始的完整路径/

或者您可以使用 find $PWD -name MY_FILE 在当前目录中搜索。

如果你知道位置,MY_FILE则转到包含的文件夹MY_FILE并使用

pwd命令打印的完整路径MY_FILE

答案4

这是一个显示文件路径的函数,您可能只需要“fpath=....”部分?

pathtofile () { : "gives full path to files given in parameters.";
  for f in "$@"; do
    fpath="$(
      cd -P "$(dirname "$f")" && \
      printf '%s\n' "$(pwd)/$(basename "${f}")" || \
      { echo "__An error occured while determining path to file: '${f}'."\
             "Maybe your user can't access its directory, most likely?__"
      }  )"
    printf "Full path to: %s\n          is: %s\n" "'${f}'" "'${fpath}'";
  done
}

使用方式:

pathtofile   file1  ../file2  /some/pathwithsymlink/file3

重要的部分:cd -P somedir:显示 somedir 的完整“真实”路径。

相关内容