今天有人文我一个错误
在运行一脚本的时候出现错误:Syntax error: Bad for loop variable
脚本:
#!/bin/bash
n=`ls ~/etc |wc -l`
for ((i=1;i<n;i++))
do
echo $i >> HOSTNAME.txt
GREP -rni "ACS OUTCOME:"~/eat/$i/$i.txt >> HOSTNAME.txt
done
这个文件在有些服务器上可以运行成功,但是在有些上面却回报错,
代码对于标准的bash来说没有错误,但是因为Ubuntu为了加快开机速度,用dash代替了bash,所以导致了错误。
取消dash的办法是:
sudo dpkg-reconfigure dash
在选项中选No,就可以了。
echo $SHELL 查看默认的bash