我有 3 个 bash 脚本。
firstScript.sh
那调用secondScript.sh
那调用thirdScript.sh
firstScript.sh
在终端中是这样执行的:firstScript.sh test1 test2
从firstScript.sh
,我调用secondScript.sh
传入$1
和$2
分别针对 test1 和 test2,如下所示:
sh secondscript.sh $1 $2
secondScript.sh
运行良好,并且调用thirdScript.sh
如下:
sh thirdScript.sh $1 $2 > logs/thirdScript_$1_.txt 2>&1
这好像有问题,thirdScript.sh
无法获取变量$2。
我需要一些帮助来解决这个问题,因为我的语法可能有误。
答案1
如果没有实际代码,这更多的是一种猜测,而不是帮助。考虑到您的问题,我可以想到以下步骤...
- 确保在第二个 shell 脚本中以正确的方式使用了 shift(当然,如果您正在使用它的话)。
- 在第二个脚本中调用“thirdScript.sh $1 $2”之前打印 $2。并在 thirdSrcipt.sh 的最开始处打印 $2 的值。这将帮助您识别有问题的脚本。
希望它能帮助您排除脚本故障。祝您排除故障愉快