MY_PATH="`dirname \"$0\"`" # relative
MY_PATH="`( cd \"$MY_PATH\" && pwd )`" # absolutized and normalized
if [ -z "$MY_PATH" ] ; then
# error; for some reason, the path is not accessible
# to the script (e.g. permissions re-evaled after suid)
exit 1 # fail
fi
echo "$MY_PATH"
5 回答
对于相对路径(即直接等效于Windows'
%~dp0
):对于绝对的规范化路径:
假设您键入bash脚本的完整路径,请使用
$0
和dirname
,例如:示例输出:
如有必要,将
$PWD
变量的结果附加到相对路径 .编辑:添加引号来处理空格字符 .
供稿人: Stephane CHAZELAS 于c.u.s.假设POSIX shell:
弗拉德的代码被过度引用 . 应该: