Shell 在 mac 终端中工作时,脚本在 alpine linux 上失败
Shell Script failing on alpine linux while working in mac terminal
当 运行 在高山 docker 容器中时,以下行失败:
toDelete=( $(curl --silent $url/_cat/indices\?format=json | jq -r '.[].index | select(startswith('\".kibana\"'))') )
出现以下错误信息:
run.sh: line 1: syntax error: unexpected "("
当我 运行 在 mac 的终端中输入命令时,一切正常。添加括号以便结果(变量 toDelete)被解释为数组,并且可以像这样用 for 循环遍历:
for index in "${toDelete[@]}"; do
curl -X DELETE $url/$index
done
感谢任何有关如何解决此问题的帮助!
记下答案。
问题出在解释器上。
进行以下更改后有效。
["/bin/ash", "run.sh"]
通过的是
["/bin/sh", "run.sh"]
当 运行 在高山 docker 容器中时,以下行失败:
toDelete=( $(curl --silent $url/_cat/indices\?format=json | jq -r '.[].index | select(startswith('\".kibana\"'))') )
出现以下错误信息:
run.sh: line 1: syntax error: unexpected "("
当我 运行 在 mac 的终端中输入命令时,一切正常。添加括号以便结果(变量 toDelete)被解释为数组,并且可以像这样用 for 循环遍历:
for index in "${toDelete[@]}"; do
curl -X DELETE $url/$index
done
感谢任何有关如何解决此问题的帮助!
记下答案。
问题出在解释器上。
进行以下更改后有效。
["/bin/ash", "run.sh"]
通过的是
["/bin/sh", "run.sh"]