特定の時間にバッチファイルを実行する方法は?

特定の時間にバッチファイルを実行する方法は?

batch成功せずにコマンドを試してみましたat。どこかに「$DD/batchfile.batch」というバッチファイルがあります。私が試したことは次のとおりです。

batch -f $DD/batchfile.batch 10:00 today
at -f $DD/batchfile.batch 10:00 today

タスクを追加して下から見ることができますが、atqバッチを実行していないようです。時間が経過しても何も起こらない場合、バッチはキューから削除されます。端末でバッチファイルのみを実行すると、正しく実行されます。

どんなアイデアがありますか?

答え1

あなたのオペレーティングシステムはLinuxに似ているようです。

$DD/batchfile.batchファイルが存在し、読み取りと実行が可能であることを確認してください。

私はあなたを信じていますバッチ(1)ジョブが開始されます。たぶんすぐに終了した可能性があります(例:PATHバッチジョブの場合、対話型ジョブではない可能性があり、PATH環境が対話型シェルと異なるため - 参照環境(7))。一部としてスクリプトを起動できますロガー(1)システムログの一部のログ情報および/またはその中にある一部のリダイレクトされた印刷を取得するコマンド。次のコマンドを使用してバッチ操作を開始することもできます。

 /bin/date +"start of my batch %c%n" > /tmp/batchstart.stamp
 echo path is $PATH >> /tmp/batchstart.stamp
 /usr/bin/printenv >> /tmp/batchstart.stamp

後でそれが存在するかどうかを確認するか、ポケットベルなどの一部のエディタを使用して/tmp/batchstart.stamp 内部を確認します。emacsgeditless

さてbatch、、atスケジュールされたタスク(5)アカウントにメールを送信して頻繁に作業します。地元のマシン)。ローカルコンピュータにいくつかの(おそらく単純な)SMTPサーバーがインストールされていますか?有効なメールアカウントまたはエイリアス(例/etc/aliases:)がありますか?

また、システムログファイルを見てください(通常はまたは下に/var/log/あります)。/var/log/messages/var/log/syslog/var/log/daemon.log/var/log/auth.log

関連情報