綾小路龍之介の素人思考

[linux] atとrlwrapを組み合わせて使う

atはコマンドの予約及び遅延実行を司るプログラムのフロントエンド。実行させるコマンドを受け付けるインターフェイスがあることが原因で、rlwrapとの組み合わせがちょっとだけやりにくい。それだけでなく、atが提供するインターフェイスでは、コマンド履歴が残らないし、入力内容の編集ができない。というわけでrlwrapと組み合わせてちょっと便利に使う方法。

例えば適当なコマンドを入力して午前0時に実行するには以下のようにする。atは標準入力を受け取ってその内容を予約実行するコマンドと理解するので、atの標準入力にcatの標準出力をパイプして、catで予約実行するコマンドを入力する。さらにcatの入力前にrlwrapをかませることで入力内容の編集及び履歴化を可能にする。このような使い方をした場合、コマンド履歴は~/.cat_historyに保存される。

$ rlwrap cat | at midnight
warning: commands will be executed using /bin/sh
echo hoge
job 297 at *** *** ** 00:00:00 ****

リファレンス

  1. Man page of AT
  2. rlwrap(1) - Linux man page
  3. Commands matching rlwrap | commandlinefu.com

ソーシャルブックマーク

  1. はてなブックマーク
  2. Google Bookmarks
  3. del.icio.us

ChangeLog

  1. Posted: 2010-08-23T00:16:36+09:00
  2. Modified: 2010-08-23T23:01:51+09:00
  3. Generated: 2017-02-13T23:09:18+09:00