なぜ「at」句コマンドはシェルをすぐに実行し、時間制限を無視するのでしょうか?

なぜ「at」句コマンドはシェルをすぐに実行し、時間制限を無視するのでしょうか?

私はシェルを書きましたt.sh 内容は次のとおりです。

touch 88888

私が使用しているコマンドは

sh t.sh | at 03:13Jun15

このコマンドを実行すると、画面に次の表示が出ました:

warning: commands will be executed using /bin/sh
job 9 at Sun Jun 15 03:13:00 2014

これは2014年6月15日日曜日03:13:00に実行されることが非常に明確です。

しかし、フォルダを確認すると、そこに 88888 ファイルが存在することがわかりました。それを削除してもう一度試しましたが、結果は同じでした。

ここで何が問題なのでしょうか? bash/sh の問題でしょうか? /bin/sh で実行されると書いてあるのですが?

答え1

at標準入力からコマンドを読み取ります。フラグを指定した場合はファイルから読み取ります-fsh t.sh | at [time]実行する内容は次のとおりです。

1. execute the shell script t.sh *right now*; 
2. pipe the output of the shell script to at. 

しかし、スクリプトには出力がないので、日曜日に実行するものはありません。

あなたが欲しいのは ですat 03:13Jun15 -f t.sh

関連情報