Skip to main content

expect

自動ログインマクロというとTeratermマクロを思い浮かべがちだが、un*x の expect コマンドを使うこともできる。

マクロはホームディレクトリ等に保存してchmod 700 しておく。

expect を使ったssh自動ログインbashスクリプトの簡単な例(一部抜粋)

sshで自動ログインだけ考えたら、パスフレーズなしの秘密鍵を使えば済むが、マクロならその後の処理も自動化できる。

expect -c "
spawn ssh ${user}@${addr}
expect {
  \"s password: \" {
  send   \"${pass}\n\"
  }
}
interact
"

exit 0

expect をインタープリタとして使ったtelnet自動ログインスクリプトの簡単な例

#! /usr/bin/expect

set addr "hostname"
set user "username"
set pass "password"

spawn telnet ${addr}
expect {
  "login: "  {
  send "${user}\n"
  expect "Password: "
  send "${pass}\n"
  }
}
interact