ユーザー名を場所引数として使用して、17:00より前にスケジュールされたすべてのジョブを削除するには、シェルスクリプトが必要です。これが私が試したことです。
#!/bin/bash
currentTime = ‘date + %k%M’
check_time_tu_run()
{
tempTime=$1
if
[ $tempTime -gt 000 -a $tempTime -lt 1700];
then
for i in `atq | awk '{print $1}'`;do atrm $i;done
else
echo “Action is not in the period of time”
fi
}
check_time_to_run $currentTime
ベストアンサー1
- dateコマンドの周りに無効な引用符を使用しています。
‘...’
バックティック(`...`
)の代わりに「ドライ」一重引用符()を使用してください$(...)
。 =
値を割り当てると、変数の周りにスペースは使用できません。- その後にスペースを入れることはできません
+
。
使用:currentTime=$( date +%k%M )
そして関数名定義( check_time_tu_run
) は
関数名ではありません。呼ぶ( check_time_to_run
)
他のエラーがあります。コードを貼り付けます。https://www.shellcheck.netより多くの助けを得るために