1
我想建立一个while循环,更新数组中的值,但我一直收到一个命令找不到错误。单行while循环更新数组
i=1
bool=true
declare -a LFT
declare -a RGT
while read -r line; do
${LFT[$i]}=${line:0:1}; ${RGT[$i]}=$(wc -l < temp$i.txt);
if [ ${LFT[$i]} -ne ${RGT[$i]} ]; then
$bool=false;
fi;
((i=i+1));
done<output2.txt
我正在阅读的文件在每行上都包含一个数字,我想填充数字LFT,每个条目都是数字。数组RGT应该填充表示为temp * .txt的文件的行数。我想测试以确保这两个数组的每个条目都相同。
但是,我不断收到一个错误:command =#not found,其中#是无论数字在文件中的行上。我是否错误地为数组赋值?此外,我得到错误:命令true = false未找到。我假设这与将值分配给布尔值有关。 感谢
哇,这是一个简单的修复。谢谢 –
有没有一种调试方法来找出问题所在,或者只是从经验中知道? –
这些东西中有一些是伴随着练习而来的。但是,您始终可以通过http://www.shellcheck.net/传递您的代码 - 这是一个非常棒的工具。所以对于了解Bash以及许多其他的东西,这是一个很棒的地方。 – codeforester