我写了一个bash脚本,我有一个函数名称数组,变量传递给它们,我想在一个循环中执行所有这些。
但是当我执行 bash 脚本时,出现此错误:
A:找不到命令
我该怎么做?
我的 bash 脚本看起来像这样:
#!/bin/bash
functions_array=("test a" "test b" "testc")
test() {
echo $1
}
testc() { echo "testc!"; }
for i in ${functions_array[@]}; do
${i}
done
您收到此错误是因为您没有引用变量。因此,test a
分为两部分。
像这样尝试:
#!/bin/bash
functions_array=("test a" "test b" "testc")
test() {
echo "$1" # quoting here and ...
}
testc() { echo "testc!"; }
for i in "${functions_array[@]}"; do # also here
${i}
done