Bash脚本绝对路径与OSX

前端之家收集整理的这篇文章主要介绍了Bash脚本绝对路径与OSX前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我试图获取到OS X上当前运行的脚本的绝对路径

我看到许多回复去readlink -f $ 0。然而,由于OS X的readlink与BSD相同,它只是不工作(它与GNU的版本一起工作)。

任何建议,一个开箱即用的解决方案呢?

有一个realpath()C函数,将完成这项工作,但我没有看到任何可用的命令行。这里有一个快速和脏的更换:
#!/bin/bash

realpath() {
    [[ $1 = /* ]] && echo "$1" || echo "$PWD/${1#./}"
}

realpath "$0"

如果路径以/开头,则以此方式打印路径。如果不是,它必须是一个相对路径,所以它前面$ PWD前面。 #。/ part从$ 1的前面剥离./。

原文链接:/bash/390459.html

猜你在找的Bash相关文章