'at'コマンドは必須プログラム/スクリプトを実行しません。

'at'コマンドは必須プログラム/スクリプトを実行しません。

「at」コマンドを使ってスケジューリングを学びたいので、テストしてみて簡単に保ちたいです。たとえば、"at 00:28"(私のタイムゾーンの形式)を入力してからを入力すると、/usr/bin/leafpadleafpadは00:28に開始すると予想されます。しかし、そのようなことは起こりませんでした。基本的に何も起こりません。で関連ジョブIDを確認してみると、"at -c jobid"最後に「実行ディレクトリにアクセスできません」と出てきます。

と入力すると"/usr/bin/leafpad"実際にはリーフパッドが開くので、これは奇妙です。

ところで、私はKali Linuxを使用しています。

ベストアンサー1

Leafpadはインタラクティブエディタです。at(またはcron同様の施設)で対話型プログラムを正常に実行できることはほとんどありません。このような状況にはいくつかの理由がありますが、現在最も重要なことは、これらの施設がユーザーエクスペリエンスから完全に分離されており、ユーザーエクスペリエンスの概念がないことです。ログインシェルもなく、PATH変数もなく、通常はターミナルセッションに関連するものもありません。

学習を開始するより良い方法は、単にシステムログにメッセージを挿入するatこのコマンドを使用することです。logger例は次のとおりです。

$ echo "/usr/bin/logger 'This is a message'" | at now +10 minutes

/usr/bin/logger 'This is a message'このコマンドは実行後10分後に実行されます。この例では、atそのコマンドとそのコマンドが呼び出す他の実行可能ファイルの追加使用法を推論できます。

おすすめ記事