获取shell脚本所处路径
WORK_DIR=$(cd $(dirname $0); pwd)
bash 如何获取当前文件的绝对路径
WORK_DIR : 变量,后续可用;
$(dirname $0) : 获取shell脚本所处的文件夹路径;
cd $(dirname $0) : 切换到shell脚本所处的文件夹;
cd $(dirname $0); pwd : 切换到shell脚本所处的文件夹后再执行pwd;
为什么不直接
WORK_DIR=$(pwd)
因为不能确定执行shell脚本时所处的路径(即pwd)是在哪,比如可能执行方式是:out/shell.sh
source 文件获取当前文件的绝对路径
#!/bin/bash
# 下面是输出当前文件的绝对路径
cd $(dirname $BASH_SOURCE)
# echo $(pwd)/$(basename $BASH_SOURCE)
temp_file=`echo $(pwd)/$(basename $BASH_SOURCE)`
# 下面是输出当前执行文件的目录
temp_dir=`echo $(pwd)`