【参考文章】: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

执行结果:

01-21 17:03