如果您想获取调用脚本的目录,则在大多数情况下可以使用环境变量$PWD或命令,pwd并使用命令替换,例如$(pwd).
如果您想获取脚本的实际位置,可以使用$0包含完整脚本名称(包括路径)的变量。
这是一个例子:
~$ cat /usr/local/bin/test-path.sh
#/bin/sh
echo "${0}" # full script name
echo "${0##*/}" # script name
echo "${0%/*}" # script path
echo "$PWD" # current working directory
echo "$(pwd)" # current working directory
pwd # current working directory
Run Code Online (Sandbox Code Playgroud)
~$ test-path.sh
/usr/local/bin/test-path.sh
test-path.sh
/usr/local/bin
/home/pa4080
/home/pa4080
/home/pa4080
Run Code Online (Sandbox Code Playgroud)
这是一个相关主题:/sbin/reboot 是哪种类型的 /bin/systemctl 链接?