Get current directory of file after getting called by another bash script
本问题已经有最佳答案,请猛点这里访问。
所以我有一个bash脚本调用另一个bash脚本。第二个脚本在另一个文件夹中。
1 2 3 4 5 6 7 | script1.sh: "some_other_folder/script2.sh" # do something script2.sh: src=$(pwd) # THIS returns current directory of script1.sh... # do something |
在第二个脚本中,它有一行
是否有任何方法可以使用脚本中的简单命令获取第二个脚本的当前目录而不必传递参数?
谢谢。
请试试这个看看是否有帮助
1 | loc=`dirname $BASH_SOURCE` |
我相信你在找
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 | [jaypal:~/Temp] cat b.sh #!/bin/bash ./tp/a.sh [jaypal:~/Temp] pwd /Volumes/Data/jaypalsingh/Temp [jaypal:~/Temp] cat tp/a.sh #!/bin/bash src=$(pwd) src2=$( dirname $( readlink -f ${BASH_SOURCE[0]} ) ) echo"$src" echo"$src2" [jaypal:~/Temp] ./b.sh /Volumes/Data/jaypalsingh/Temp /Volumes/Data/jaypalsingh/Temp/tp/ |