「at」コマンドを使用するたびに、次のメッセージが表示されます。
warning: commands will be executed using /bin/sh
それは何について私に警告しようとしていますか? さらに重要なことに、警告をオフにするにはどうすればよいですか?
これは、bash をシェルとして使用しない私たちにとっては良い警告となります。なぜなら、このコードを実行すると、日常のシェルにある機能が使用できないことを忘れてしまうからです。決められた時間に。
すなわち
username@hostname$ at 23:00
warning: commands will be executed using /bin/sh
at> rm **/*.pyc
at> <EOT>
job 1 at 2008-10-08 23:00
「**」の使用は完全に有効な zsh ですが、/sbin/sh ではありません! 別のシェルの使用に慣れている場合、これらの間違いを犯しやすいため、正しいことを行うことを忘れないでください。
警告は迷惑なだけでなく、有害な影響を及ぼしますか?マニュアルページにはオフにする方法が記載されていないため、ソースからatを再構築せずに発行を停止することはできないと思います。
さて、見たくない場合は、at [time] 2>/dev/null
忘却に送るために使用できますが、残念ながら、at>
プロンプトは何らかの理由でSTDERRに出力されます(バグ、IMO-実際にはSTDOUTに移動する必要があります)。 'これによっても隠されています。
プロンプトを食べずに警告を排除するシェル配管を作成することは可能かもしれませんが、
at [time] 2>&1 | grep -v warning
は機能せず、at
て処理します。したがって、実際に問題が発生しない限り、他の人と同じように警告を無視するのが最善だと思います。
このメッセージを回避したい場合は、指定された環境 (ksh、bash、csh、zsh、perl など) を呼び出すスクリプトを「at」で実行してください。
さらに、詳細については、「at」man ページhttp://www.rt.com/man/at.1.htmlを参照してください。
at and batch read commands from standard input or a specified file which are to be executed at a later time, using /bin/sh.