0

以下は、今日の午前9時にLinuxコマンドラインに「hello」(またはリマインダー)を出力するはずです。

$ at 9:00AM
warning: commands will be executed using /bin/sh
at> echo "hello"
at> <EOT> 

ただし、指定された時間には何も起こりません。

etc/at.deny/etc/at.allowファイルがないので、コマンドを使用するためのアクセス許可に問題はないはずです。また、午前9時にファイルを書き込むと次のように機能します。

$ at 9:00AM
at> echo "hello" > /home/mart/hello.txt
at> <EOT>
$ cat /home/mart/hello.txt
hello

すべてのジョブがスケジュールどおりに表示され、ターミナルウィンドウに出力を取得できません(ターミネーターを備えたCrunchbang Linuxを使用しています)。なんで?その出力のウィンドウを何らかの方法で指定する必要がありますか?

助けてくれてありがとう!

4

2 に答える 2

1

atatd端末にアクセスできないデーモン()からコマンドを実行します。したがって、スクリプトからの出力はターミナルに表示されません(ttyコマンドで右にパイプする場合を除く)。

代わりに、それはman at言うように行います:

ユーザーには、コマンドからの標準エラーと標準出力があれば、メールで送信されます。

mailマシンが適切に構成されている場合は、を使用してこれらのレポートにアクセスできる場合があります。

端末に書き込みを行いたい場合はat、出力をにパイプしwriteて、ユーザーのTTYにメッセージを書き込むかwall、システムに接続されているすべての端末に書き込みを行うことができます。

于 2012-10-19T06:29:12.813 に答える
0

さて、nneonneoの説明によりwall、すべてのユーザーにメッセージを送信するを使用するようになりました。したがって、ターミナルウィンドウで自分自身のリマインダーを設定するには、次のようにします。

$ at 9:00AM
warning: commands will be executed using /bin/sh
at> echo "hello" | wall
at> <EOT>
于 2012-10-21T08:54:35.063 に答える