タグ
  Active Directory (51)
  ANSI (1)
  bash (1)
  BAT (14)
  bind (1)
  CentOS (3)
  CSharp (1)
  C言語 (4)
  DNS (3)
  Excel (1)
  Fedora (4)
  FreeBSD (3)
  iSCSI (1)
  Java (11)
  JavaScript (6)
  Link (4)
  Linux (15)
  Mail (1)
  Microsoft (4)
  NIS (1)
  OpenLDAP (2)
  OpenSolaris (4)
  PHP (2)
  PostgreSQL (2)
  PowerShell (33)
  RFC (3)
  Solaris (10)
  SQL Server (1)
  Ubuntu (3)
  VBScript (65)
  Visual Basic (1)
  VMware (2)
  Windows (14)
  WMI (16)
  WSF (5)
  WSH (10)
  作成中 (5)
  慣用句 (1)
  正規表現 (6)
bash で telnet の自動化
expect を使うまでもないような単純なデータ送信を telnet で自動化する。
キモは pipe で telnet に送ることができる点と、sleep でタイミングを調整する点。
HTTP HEAD リクエスト
ローカルホストのWebサーバーに対して HEAD をリクエストし、結果を www.head.txt に保存する
#!/bin/bash
CONNECT_HOST='127.0.0.1'; export CONNECT_HOST
(sleep 1; echo "HEAD / HTTP/1.1";
 sleep 1; echo "host: $CONNECT_HOST";
 sleep 1; echo;
 sleep 1; echo; ) | telnet $CONNECT_HOST 80 >> www.head.txt
SMTP
user1@example.com から target1@example.com へメールを送信
#!/bin/bash
CONNECT_HOST='127.0.0.1'; export CONNECT_HOST
(sleep 1; echo "HELO localhost.localdomain";
 sleep 1; echo "MAIL FROM: user1@example.com";
 sleep 1; echo "RCPT TO: target1@example.com";
 sleep 1; echo "DATA"
 sleep 1; echo "From: MAIL User <user1@example.com>"
          echo "Subject: mail from user1"
          echo "To: MAIL Target <target1@example.com>"
          echo "mail from user1 body"
          echo "."
 sleep 1; echo "QUIT"
 sleep 1; echo; ) | telnet $CONNECT_HOST 25
タグ: Linux bash
[リロード] [記事修正] [新規作成] [使用方法]
©2004-2010 UPKEN