dirname :取一个文件的目录,example:
$ a=/user/guicl/shell_bash/test.sh
$ echo `dirname a` // 结果/user/guicl/shell_bash
basename :取一个文件的文件部分,可以是去掉目录,也可以是去掉后缀:
$ a=/user/guicl/shell_bash/test.sh
$ echo `basename a` //结果test.sh
$ echo `basename $a .sh` //结果test
纯shell版本的dirname 和basename替换方法:
dirname:
$a=/user/guicl/shell_bash/test.sh
$echo ${a%/*} //结果/user/guicl/shell_bash
basename:
$a=/user/guicl/shell_bash/test.sh
$echo ${a##/*/} //结果test.sh
$a=${a%.*} && a=${a##/*/} && echo $a //结果test