是否有一种简单的方法可以打印file.txt的完整路径?
file.txt = /nfs/an/disks/jj/home/dir/file.txt
<命令>
dir> <command> file.txt
应该打印
/nfs/an/disks/jj/home/dir/file.txt
是否有一种简单的方法可以打印file.txt的完整路径?
file.txt = /nfs/an/disks/jj/home/dir/file.txt
<命令>
dir> <command> file.txt
应该打印
/nfs/an/disks/jj/home/dir/file.txt
当前回答
您可以使用此功能。如果给出的文件名没有相对路径,则假定它在当前工作目录中:
abspath() { old=`pwd`;new=$(dirname "$1");if [ "$new" != "." ]; then cd $new; fi;file=`pwd`/$(basename "$1");cd $old;echo $file; }
用法:
$ abspath file.txt
/I/am/in/present/dir/file.txt
使用相对路径:
$ abspath ../../some/dir/some-file.txt
/I/am/in/some/dir/some-file.txt
文件名中有空格:
$ abspath "../../some/dir/another file.txt"
/I/am/in/some/dir/another file.txt
其他回答
在Mac OSX中,执行以下步骤:
CD到目标文件的目录。 输入下列任意一个终端命令。
Terminalls "`pwd`/file.txt"
echo $(pwd)/file.txt
用实际的文件名替换file.txt。 按回车键
获取文件的完整路径:
1)在包含你的文件的文件夹中打开你的终端,按键盘上的下列键:
CTRL + ALT + T
2)输入“pwd”(工作目录打印名称的首字母缩写):
your@device ~ $ pwd
这就是所有的朋友们!
这将为您提供文件的绝对路径:
find / -name file.txt
我知道这是一个老问题了,但在这里补充一下信息:
Linux命令,可用于查找命令文件的文件路径。
$ which ls
/bin/ls
这里有一些注意事项;请参见https://www.cyberciti.biz/faq/how-do-i-find-the-path-to-a-command-file/。
适用于Mac, Linux, *nix:
这将为您提供当前目录下所有文件的引用csv:
ls | xargs -I {} echo "$(pwd -P)/{}" | xargs | sed 's/ /","/g'
输出可以很容易地复制到python列表或任何类似的数据结构中。