似乎无法将多个参数传递给 bash 脚本

似乎无法将多个参数传递给 bash 脚本

我有 3 个 bash 脚本。

firstScript.sh那调用secondScript.sh那调用thirdScript.sh

firstScript.sh在终端中是这样执行的:firstScript.sh test1 test2firstScript.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

如果没有实际代码,这更多的是一种猜测,而不是帮助。考虑到您的问题,我可以想到以下步骤...

  1. 确保在第二个 shell 脚本中以正确的方式使用了 shift(当然,如果您正在使用它的话)。
  2. 在第二个脚本中调用“thirdScript.sh $1 $2”之前打印 $2。并在 thirdSrcipt.sh 的最开始处打印 $2 的值。这将帮助您识别有问题的脚本。

希望它能帮助您排除脚本故障。祝您排除故障愉快

相关内容