2014-09-04 晴れ [長年日記]
_1 expectスクリプト
コマンドを制限するためにログインシェルが変更されたシステムで,あれこれ簡単にコマンドを打ちたかったのでexpectを使ってみることに.man(1) expectに以下のようにあるように
Expect uses Tcl (Tool Command Language). Tcl provides control flow (e.g., if, for, break), expression evaluation and several other features such as recursion, procedure definition, etc. Commands used here but not defined (e.g., set, if, exec) are Tcl commands (see tcl(3)).
expectのスクリプトはTclで書く必要があり,あれこれ凝ったことをしようとすると格段に難易度が上がる様子.適当に使用例をググったら,シェルスクリプトからexpectコマンドを呼び出して使うのが一般的なよう.確かに全部Tclで書こうとしてみたが結構ダルいので,必要最低限だけにして濁しておいた.まあ動くのが重要だし.
ということで面倒な作業が自動化できるメドがついて良かった.