Linux shell - `dirname $0` 定位到運行腳本的相對位置


例1.

在/home/admin/test/下新建test.sh內容如下:

 cd `dirname $0`
 echo `pwd`

然后返回到/home/admin/執行

sh test/test.sh

運行結果:

/home/admin/test

 

這樣就可以知道一些和腳本一起部署的文件的位置了,只要知道相對位置就可以根據這個目錄來定位,而可以不用關心絕對位置。這樣腳本的可移植性就提高了,扔到任何一台服務器,(如果是部署腳本)都可以執行。

dirname 用於取指定路徑所在的目錄

$0 表示當前運行的命令

 

例2.

在~/server/colline/cluster5_2/bin下新建env.sh,coltaskmanager.sh,然后在coltaskmanager.sh中調用腳本env.sh

這個時候,我們可以這樣實現:

. `dirname $0`/env.sh

 

 

 

 

 

 

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM