我的笔记本电脑上有一堆混乱的python安装.我正在查看/usr/local/bin中的可执行文件,它们都是../../../库的符号链接……
围绕这个有一些奇怪的行为.如果我这样做 – 我会看到 – >以及符号链接右侧的相对路径:
lrwxr-xr-x 1 root wheel 69B Dec 7 22:29 python3 -> ../../../Library/Frameworks/Python.framework/Versions/3.1/bin/python3
但是,我似乎无法获得任何命令行工具来解析该路径并显示python3的实际路径.我在这里和那里找到了一些关于使用pwd -P和find实用程序的花絮.问题是这些似乎不能在OS X上以人们描述它们在linux上工作的方式(即输出符号链接的完整路径).他们只为我打印符号链接路径:
FantasticMrFox:bin robert$pwd -P python3
/usr/local/bin
FantasticMrFox:bin robert$find `pwd -P` -name python3
/usr/local/bin/python3
关于这里发生了什么的任何想法?
解决方法:
我认为pwd -P和readlink将成为你完成这项任务的朋友.
“How can I get the behavior of GNU’s readlink -f on a Mac?”是一个方便的资源.
pwd -P只有在symlink目录中才有效:
14:07:13 jason@mac ~ $cd bin
14:08:08 jason@mac bin $pwd -P
/Users/jason/Applications
readlink通过指定目标来工作(因此它可以用于文件):
14:09:03 jason@mac ~ $readlink bin
Applications
14:09:34 jason@mac ~ $readlink /var
private/var
readlink的输出似乎是相对于指定目标的父节点.
例如:/ var的父是/,所以private / var是正确的,相对于/.根据我上面的bin例子 – >应用程序都在我的主目录中,无论我在哪里运行它,输出都是一样的.
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。