bash脚本数组问题导致相同错误[重复]

我下面的bash脚本有一个问题,它总是有错误 ./check2.sh:2:语法错误:“(”意外,我已经尝试了每种方式尝试解决此问题,我可能缺少了一些简单的方法。任何人都可以给我一些指导

# array of dependencies
array=("convert" "ffmpeg");
for i in "${array[@]}"
do
    command -v $i >/dev/null 2>&1 || { 
        echo >&2 "$i required"; 
        exit 1; 
    }
done
评论
  • 微笑暂离
    微笑暂离 回复

    You probably need to add a shebang to make sure the code executes in bash and not the default shell. At the start of the script there should be the line:

    #!/bin/bash
    

    这是因为数组语法仅在Bash中受支持,而在出于性能原因而通常默认使用的更基本的Shell中则不受支持。