1.dirname $path
用于获取$path的上一级目录,不对目录是否存在进行判断
建立一个目录用于测试:
文件存在时:
$ dirname /e/res/kk.docx
/e/res
文件不存在时:
$ dirname /e/res/kk.sh
/e/res
因此dirname可以用于在脚本中获取当前脚本所在目录:
curPath=$(cd $(dirname $0);pwd)
echo $curPath
2.basename $path
用于获取$path路径下的文件名称,即:最后一级的文件或者文件夹的名称
不对文件是否存在进行判断
文件存在时:
basename /e/res/kk.docx
kk.docx
文件不存在时:
$ basename /e/res/kk.sh
kk.sh
如果需要一次获取多个文件,可以加上-a
$ basename -a /e/res/kk.docx /e/res/res.py
kk.docx
res.py
3.realpath $path
返回$path的绝对路径,路径不存在会报错,文件不存在不会报错
文件存在时:
$ realpath /e/res/kk.docx
/e/res/kk.docx
文件不存在时:
$ realpath /e/res/kk.sh
/e/res/kk.sh
目录不存在则报错:
$ realpath /e/resre/kk.sh
realpath: /e/resre/kk.sh: No such file or directory