我有一个bash数组,该数组以字符串形式为元素。
${arr[0]} = "path/to/json1"
${arr[1]} = "path/to/json2"
${arr[2]} = "path/to/json3"
等等...
现在,我想将所有这些元素作为命令行参数传递给同一bash脚本中的python命令
python3 script.py ${arr[0]} ${arr[1]} ${arr[2]}
,但问题是ARR中的元素数量有所不同,尚未固定。因此,我不能将每个元素用作上述单独的参数进行编码。
我们如何将bash数组的所有元素作为命令行参数传递给python命令?
使用${arr[@]}
参考整个数组。
python3 script.py "${arr[@]}"
这不是针对Python的特定的,这是您将所有数组元素传递给任何命令的方式。
除非有充分的理由不这样做,否则您也应该始终引用shell变量。