FC2ブログ

rshで複数コマンド

$ rsh host sh < test.txt
で出来る。

shでコマンド実行させる訳だから、
$ rsh host sh < test.sh
とシェルスクリプト読み込んだ方が無難。
スポンサーサイト



expectコマンドによる自動化

sshなどのコマンドはヒアドキュメント(command << hoge.txt)を利用して自動化することができない。

ヒアドキュメントはテキストファイルに書かれている内容を読み込ませてプログラムを進ませる、というもの。
sshはちょっと入力形式が違う。

そんなわけでexpectコマンドを利用する。

#!/usr/bin/expect

if {$argc!=1} {
puts "Usage: $argv0 port"
exit
}

set PORT [lindex $argv 0]

set timeout 10
spawn ssh hoge@hoge.com
expect "Password:"
send "ぱすわーど\r"
interact

ここで、$argv0はプログラム名、[lindex $argv 0]が引数1を表す。
[lindex $argv 1]ではなく0が引数1を表していた。

調べてたところ、どうもspawnはexpectの内部コマンドっぽい
そんなこととはつゆ知らずspawnの導入を調べて不毛に時間を費やしたorz


とりあえずこれを利用するとめちゃくちゃ管理が楽になる。
パスワードの管理は別問題だけど。

プログラム内にパスワード書くと他人に見られたときに大変なので権限は変えておくべき。

近況

学会の準備に追われてる。

今回は珍しく学会に余裕を持ってトラペ(transparency)を完成させることができそう。
学部四年生の時から何度か発表会に出ているけど、余裕を持って発表原稿を完成させることができそうなのは今回が初めて。

今年は修士論文もかかなければならないので、これからますます忙しくなるだろうなぁ。

(研究中に新しく知ることができたコンピュータの知識は後ほど余裕がある時に追記予定)
中野梓
プロフィール

dhythm

Author:dhythm
関西に住む大学院生。専攻は宇宙物理学。
専攻が宇宙物理学の理学修士。現在は社会人。
Mac, Windowsを併用。Linuxでサーバーマシンをたてる計画中。
使用言語 : C, Java, COBOL, Perl, Python, Object-C

社会の荒波にもまれながら、日々勉強中。

アクセスカウンター
最新記事
最新コメント
最新トラックバック
月別アーカイブ
カテゴリ
検索フォーム
RSSリンクの表示
リンク
ブロとも申請フォーム

この人とブロともになる

QRコード
QRコード