0

配列要素を読み取り、ターミナルに出力する「script.sh」という名前のシェルスクリプトを作成しました。スクリプトは次のとおりです。

 arr=("hello" "world")
for i in ${arr[@]}
do
echo  $i;
done

ターミナルで実行すると期待される出力、つまり「Hello World」が表示されますが、crontabジョブで同じスクリプトをスケジュールして、毎分自動的に実行され、出力を別のファイルに保存すると、ジョブは失敗して次のようになります。

/home/vikash/script.sh: 1: Syntax error: "(" unexpectedエラー。

スクリプトを毎分実行し、出力を別のファイルに保存するcrontabジョブは次のとおりです。

* * * * * $HOME/script.sh >> $HOME/output.log 2>&1

このシナリオで配列を使用する方法は?? 助けてください。

4

2 に答える 2

2

これをスクリプトの最初の行の前に追加します。

#!/bin/bash
于 2015-03-21T12:38:17.037 に答える
0

この質問がまだ有効な場合は、スクリプトを実行してください

bash script.sh

私もshで試してみましたが、shでは機能しませんが、bashではスムーズに動作します。

于 2017-03-10T08:20:09.900 に答える