私はRaspbian JessieとRaspberry Piを使用して、オーディオビジュアルアートインスタレーションに取り組んでいます。オーディオまたはビデオは、bashスクリプトによるログイン後に開始されます。このスクリプトは単独でうまく動作します。整数が変数として解釈されています
私の問題は、ifステートメントを使用して、特定の時間帯にのみループが実行されるようにスケジュールを設定しようとしていたことが原因です。これはループの先頭に置かれ、新しいファイルが開始されるまでの時間を確認します。
HOUR=$(date +"%H")
echo "The hour is $HOUR"
if [ $HOUR -gt 22 || $HOUR-lt 8 ]
then
sleep 60
continue
fi
私は、スクリプトの先頭にdeclare -i HOUR
と整数としてHOUR
宣言しました。
スクリプトはこのエラーを出力し、次に続行します。
./start_audio.sh: line 49: 13: command not found
私は$HOUR
[13]は、エラーに示されているので、変数が正しく設定されていると信じています。なぜ、$hour
は、整数として宣言されたときにコマンドとして解釈されるのですか?
引用符を追加したり空白を削除したりするなどの変更がありました。他の質問への回答が示唆しています。
スクリプト全体を投稿できますか? – Mox
[Shellcheck](http://www.shellcheck.net)は、このような多くの問題を自動的に検出します。 –