Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/unix/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Unix 我怎样才能知道我的符号链接指向什么?_Unix - Fatal编程技术网

Unix 我怎样才能知道我的符号链接指向什么?

Unix 我怎样才能知道我的符号链接指向什么?,unix,Unix,制作一个bash脚本,我试图找出一种方法来找出我的符号链接指向什么。现在,我正在使用它,但是只有当我的符号链接在当前目录中时,它才起作用。如果我的符号链接在另一个目录中,有没有办法找出它指向的是什么 ls -l "symlink" | cut -d'>' -f2 如果您有readlink(1)实用程序(GNUCoreutils的一部分),它会做您想要的事情。否则,您就有点进退两难了,我不知道有任何简单和可移植的等效工具。在BSD工具链上,我正在做: stat -f %Y <fi

制作一个bash脚本,我试图找出一种方法来找出我的符号链接指向什么。现在,我正在使用它,但是只有当我的符号链接在当前目录中时,它才起作用。如果我的符号链接在另一个目录中,有没有办法找出它指向的是什么

 ls  -l "symlink" | cut -d'>' -f2

如果您有
readlink(1)
实用程序(GNUCoreutils的一部分),它会做您想要的事情。否则,您就有点进退两难了,我不知道有任何简单和可移植的等效工具。

在BSD工具链上,我正在做:

stat -f %Y <filename>
在GNU工具链上,这并不容易,您可以使用以下内容:

$ stat -c %N /usr/bin/firefox
`/usr/bin/firefox' -> `../lib/firefox-3.6.12/firefox.sh'
然后,使用awk/cut和sed提取并删除垃圾报价

或者梅西耶解决方案是使用
ls-al
和awk/cut提取所需的列

$ stat -c %N /usr/bin/firefox
`/usr/bin/firefox' -> `../lib/firefox-3.6.12/firefox.sh'