這篇文章主要講解了“如何獲取shell腳本自身所在目錄的Shell腳本”,文中的講解內(nèi)容簡單清晰,易于學(xué)習(xí)與理解,下面請大家跟著小編的思路慢慢深入,一起來研究和學(xué)習(xí)“如何獲取shell腳本自身所在目錄的Shell腳本”吧!
簡單版
下面是一個最簡單的實現(xiàn),可以解決大多數(shù)問題,缺陷是對于軟鏈接顯示的是軟鏈接所在的目錄
lineos:false
代碼如下:
#!/bin/bash
DIR="$( cd "$( dirname "$0" )" && pwd )"
完善版
這個版本解決了使用ln -s target linkName創(chuàng)造軟鏈接無法正確取到真實腳本的問題。
lineos:false
代碼如下:
#!/bin/bash
SOURCE="$0"
while [ -h "$SOURCE" ]; do # resolve $SOURCE until the file is no longer a symlink
DIR="$( cd -P "$( dirname "$SOURCE" )" && pwd )"
SOURCE="$(readlink "$SOURCE")"
[[ $SOURCE != /* ]] && SOURCE="$DIR/$SOURCE" # if $SOURCE was a relative symlink, we need to resolve it relative to the path where the symlink file was located
done
DIR="$( cd -P "$( dirname "$SOURCE" )" && pwd )"
感謝各位的閱讀,以上就是“如何獲取shell腳本自身所在目錄的Shell腳本”的內(nèi)容了,經(jīng)過本文的學(xué)習(xí)后,相信大家對如何獲取shell腳本自身所在目錄的Shell腳本這一問題有了更深刻的體會,具體使用情況還需要大家實踐驗證。這里是創(chuàng)新互聯(lián)網(wǎng)站建設(shè)公司,,小編將為大家推送更多相關(guān)知識點的文章,歡迎關(guān)注!