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

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

<命令>

dir> <command> file.txt  

应该打印

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

当前回答

适用于Mac, Linux, *nix:

这将为您提供当前目录下所有文件的引用csv:

ls | xargs -I {} echo "$(pwd -P)/{}" | xargs | sed 's/ /","/g'

输出可以很容易地复制到python列表或任何类似的数据结构中。

其他回答

在类似的场景中,我从其他位置启动cshell脚本。为了设置脚本的正确绝对路径,让它只在指定的目录中运行,我使用了以下代码:

set script_dir = `pwd`/`dirname $0`

$0存储脚本执行的确切字符串。

例如,如果脚本像这样启动:$> ../../test/test.csh, $script_dir将包含/home/abc/sandbox/v1/

我知道这是一个老问题了,但在这里补充一下信息:

Linux命令,可用于查找命令文件的文件路径。

$ which ls
/bin/ls

这里有一些注意事项;请参见https://www.cyberciti.biz/faq/how-do-i-find-the-path-to-a-command-file/。

这将为您提供文件的绝对路径:

find / -name file.txt 

获取文件的完整路径:

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

CTRL + ALT + T

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

your@device ~ $ pwd

这就是所有的朋友们!

对于Mac OS X,我替换了操作系统附带的实用程序,用更新版本的coreutils替换了它们。这允许你在Mac上访问像readlink -f(文件的绝对路径)和realpath(目录的绝对路径)这样的工具。

Homebrew版本在命令名前附加了一个“G”(GNU工具)——所以等价的是greadlink -f FILE和grealpath DIRECTORY。

关于如何通过Homebrew在Mac OS X上安装coreutils/GNU Tools的说明可以在这篇StackExchange文章中找到。

注意:readlink -f和realpath命令对于非mac Unix用户应该是开箱即用的。