该问题通常是由于在for循环中使用不兼容的shell语法而导致的。例如,当使用/bin/sh而不是/bin/bash时,会出现此错误。解决方案是在脚本开头使用#!/bin/bash(或者你正在使用的shell),并使用$()而不是``来执行命令替换。例如:
#!/bin/bash for i in $(aws ec2 describe-instances --query 'Reservations[].Instances[].[InstanceId]' --output text) do echo $i done
使用$()而不是``可以消除“bad substitution”的错误。此外,确保在执行AWS CLI命令之前已经安装并配置了AWS CLI。
上一篇:badsubstitution${line::-1}的中文意思是'非法的替换${line::-1}”。
下一篇:BadSwiftUIperformancewhenscrollingatextviewwith~1000lines