要获取完整路径,请使用:
readlink -f relative/path/to/file
要获取文件目录:
dirname relative/path/to/file
您还可以将两者结合起来:
dirname $(readlink -f relative/path/to/file)
如果
readlink -f您的系统不可用,则可以使用以下*:
function myreadlink() { ( cd "$(dirname )" # or cd "${1%}" )}
请注意,如果只需要移动到指定为相对路径的文件的目录,就不需要知道绝对路径,相对路径是完全合法的,因此只需使用:
cd $(dirname relative/path/to/file)
如果希望(在脚本运行时)返回原始路径,请使用
pushd代替
cd,并
popd在完成后使用。
尽管
myreadlink在此问题的上下文中上述内容已经足够好,但相对于
readlink上面建议的工具而言,它具有一些局限性。例如,它没有正确地链接到具有的不同文件的链接
basename。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)