运行我收到的以下脚本:
第8行:((:i = 0:语法错误: 算术运算符无效(错误 令牌是“”)
知道出了什么问题吗?可以在iMac上使用文本编辑器进行编辑吗?可能有CR的事情吗?
domains=( yourdomain.com yourdomain2.com )
sqldbs=( yourdb1 yourdb2 )
opath=$HOME/backup/
mysqlhost=mysqlhostname
username=mysqlusername
password=mysqlpassword
suffix=$(date +%m-%d-%Y)
for (( i = 0 ; i < ${#domains[@]} ; i++ ))
do
cpath=$opath${domains[$i]}
if [ -d $cpath ]
then
filler="just some action to prevent syntax error"
else
echo Creating $cpath
mkdir -p $cpath
fi
mysqldump -c -h $mysqlhost --user $username --password=$password ${sqldbs[$i]} > ${cpath}/${sqldbs[$i]}_$suffix.sql
done
答案 0 :(得分:1)
错误代码告诉您问题所在:您有一个额外的空间。第8行应该是:
for (i=0; i<${#domains[@]}; i++)
答案 1 :(得分:0)
如果您使用的是记事本++,请转到编码&gt;在没有BOM的情况下以UTF8编码。对不起,我对Mac软件一无所知。
答案 2 :(得分:0)
我再次复制并粘贴第8行(就像在脚本中一样)并且工作正常。似乎解析错误是由于第8行中的额外字符