`dirname $0`
`dirname $0`:
在Linux命令行状态下单纯执行 $cd `dirname $0`是毫无意义的,因为它返回当前路径的"."。
这个命令写在脚本里面才有作用,它返回这个脚本文件放置的目录,并可以根据这个目录来定位所要运行程序的相对位置(绝对位置除外)。
在/home/admin/test/下新建test.sh内容如下:
1 cd `dirname $0` 2 echo `pwd`
然后回到home/admin/执行
1 sh test/test.sh
运行结果
1 /home/admin/test
这样就可以知道一些和脚本一起部署的文件的位置了,只要知道相对位置就可以根据这个目录来定位,可以不用关心绝对位置了,增加了可移植性。