腳本的互相調用中,隻有在同一級目錄下才可以使用__file__參數去擷取路徑名,(在shell裡使用pwd也同樣),否則,使用的就是主檔案(最開始運作的腳本程式)的所在位置,是錯誤路徑:一定要注意當期那運作主檔案是誰
而
shell腳本互相調用時路徑也要注意部分指令會使用目前檔案路徑:參見
shell腳本裡面互相調用時路徑不要用pwd擷取
javascript:void(0)
[deve_test_user@A3-Tracker-redis-deve script]$ vim testobseve.sh
1 file_path=`dirname $0`
2 echo $file_path
3
4 testfile="$file_path/observereport"
5 python $testfile/test.py
test.py:
import os
import sys
file_path=os.path.dirname(os.path.abspath("__file__"))
print file_path
檔案test.py在/home/www/allyes/mifc/mIFC-BE/current/script/observereport
是script的下一級目錄
而輸出為:
[deve_test_user@A3-Tracker-redis-deve script]$ sh testobseve.sh
.
/home/www/mifc/mIFC-BE/mifc-BE/script
可以看出 隻能輸出shell腳本的目前目錄了