【参考文章】:Linux shell - `dirname $0` 定位到运行脚本的相对位置
【参考文章】:Linux命令之basename使用
1. dirname $0
获取脚本文件所在的目录信息
dirname.sh :
注意 dirname 是在 反引号里面。Tab键上面那个键。
hello.txt :
执行结果如下
2. basename
basename string suffix
输出指定字符串中最后一个 / 之后的字符,不包括 / ,如果执行了 suffix ,则删除最后一个 suffix 字符
#!/bin/sh a=` basename $0` echo $a # 输出当前脚本的文件名 echo "`basename $0`" # 输出最后一个 / 之后的字符串,不包含最后一个 / basename `dirname $0`/dirname.sh # 输出最后一个 / 之后的字符串,不包含最后一个 /,并删除最后一个sh字符 basename `dirname $0`/dirname.sh sh # 验证是否删除最后一个指定的字符 basename /1a/2a/3a.a a
执行结果: