是否有一种简单的方法可以打印file.txt的完整路径?

file.txt = /nfs/an/disks/jj/home/dir/file.txt

<命令>

dir> <command> file.txt  

应该打印

/nfs/an/disks/jj/home/dir/file.txt

当前回答

获取文件的完整路径:

1)在包含你的文件的文件夹中打开你的终端,按键盘上的下列键:

CTRL + ALT + T

2)输入“pwd”(工作目录打印名称的首字母缩写):

your@device ~ $ pwd

这就是所有的朋友们!

其他回答

你可以把它保存在壳里。Rc或者直接放到控制台

function absolute_path { echo "$PWD/$1"; }
alias ap="absolute_path"

例子:

ap somefile.txt

将输出

/home/user/somefile.txt

我发现最简单的方法是:

for i in `ls`; do echo "`pwd`/$i"; done

这对我来说很有效。

这个解决方案使用的命令存在于Ubuntu 22.04上,但通常存在于大多数其他Linux发行版上,除非它们只是为了s'mores而硬核。

在Linux或Mac上获取文件完整路径的最短方法是使用ls命令和PWD环境变量。

<0.o> touch afile
<0.o> pwd
/adir
<0.o> ls $PWD/afile
/adir/afile

你可以用你自己的目录变量d做同样的事情。

<0.o> touch afile
<0.o> d=/adir
<0.o> ls $d/afile
/adir/afile

注意,如果没有标记,ls <FILE>和echo <FILE>是等效的(对于当前目录中的有效文件名称),所以如果你使用echo,如果你愿意,你可以使用ls代替。

如果情况相反,您有完整的路径并想要文件名,只需使用basename命令。

<0.o> touch afile
<0.o> basename $PWD/afile
afile

我知道有一个更简单的方法,但如果我能找到它…

jcomeau@intrepid:~$ python -c 'import os; print(os.path.abspath("cat.wav"))'
/home/jcomeau/cat.wav

jcomeau@intrepid:~$ ls $PWD/cat.wav
/home/jcomeau/cat.wav

获取文件的完整路径:

1)在包含你的文件的文件夹中打开你的终端,按键盘上的下列键:

CTRL + ALT + T

2)输入“pwd”(工作目录打印名称的首字母缩写):

your@device ~ $ pwd

这就是所有的朋友们!