0

私が受け取った以下のスクリプトを実行します:

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
4

3 に答える 3

1

エラー コードは、問題の内容を示しています。余分なスペースがあります。行 8 は次のようになります。

for (i=0; i<${#domains[@]}; i++)
于 2010-12-10T22:26:12.763 に答える
0

notepad++ を使用している場合は、[エンコード] > [BOM なしの UTF8 でエンコード] に移動します。申し訳ありませんが、私は Mac ソフトウェアについて何も知りません。

于 2010-12-10T21:59:35.770 に答える
0

8行目を(スクリプトのように)コピーして再度貼り付けたところ、問題なく動作しました。8 行目の余分な文字が原因で解析エラーが発生したようです

于 2010-12-13T17:49:43.720 に答える