スポンサーサイト

上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。



ttler.hta - 画面ガラ

UNIXシェル環境で定期作業をする場合、Teratermマクロで自動化するのはよく見られる。ただし一時的な定例作業の場合、それをマクロファイル化する手間とのトレードが微妙になる場合がある。
何回も使うわけじゃないし、かといって毎回手作業でコマンドを列挙したテキストファイルからteratermのコンソールにコピペするのも面倒、もしコマンドを列挙したファイルをそのまま自動で実行できれば。そういう場合、teratermマクロにはファイルI/Oの関数も用意されている。
ただしこの場合、どんなコマンドであれ無条件に実行して突き進んでいってしまい、それが危険なケースだった場合、運用のリスクが高い。
それならば、実行できるコマンドをあらかじめ登録したもののみにし、それ以外の記述は全部除外してTTLマクロファイル化するようなツールがほしい、さらに、コマンド別にポップアップ表示やループ制御文を記述することができれば、幅広く使えるツールになるかも・・・

というわけで仕事で使っているそれを汎用化しようというのがこの休みの目標。

だが、進捗はまだ3割ほどだ。やばし。



メインのとこ
while(!inif.AtEndOfStream){
a = inif.ReadLine().split(/\t+/);
if(/^\/\/|^$/.test(a[0])) continue;
g=g.replace(new RegExp(
"^("+a[0]+".*)\r\n","mg"),
"sendln '$1'\r\nwait '}%' '$ ' '? ' '> '\r\n"
);
}
INIファイルに
ls
の行があれば、
たとえば
ls hoge
ls -lr hoge
と書いてあるファイルが
sendln 'ls hoge'
wait '}%' '$ ' '? ' '> '
sendln 'ls -lr hoge'
wait '}%' '$ ' '? ' '> '
というTTLファイルを作成する。

さて、汎用的な環境での動作確認をどうするか。最新のteratermではcygwin接続があるものの、ログイン制御とか、linuxtとかsolalisならではのコマンドとか、ああめんどくさい。予想通りのつまづきだ。
スポンサーサイト



comment

Secret

while(aho.atEndofStream)

笹部 政宏
笹部 政宏
mail




フリーソフツ
Category
はてブ
Monthly Archive
New Entry
New Comment
New Trackback
RSS
Copyright © Kittens flewby me All Rights Reserved.

FC2Ad

上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。