cronを利用して定期的にtelnetにてメールサーバーにアクセスするコマンド
を教えていただきたいのです。
そのために/sbinなどにhogeというような実行形式のファイルをおきますよね。
そこに記述する内容なのですが、
--------------------------------------
#! /bin/sh
PATH=?bin:/sbin:/usr/bin:/usr/sbin
export PATH
telnet メールサーバー名 110
とした後に以下のコマンドを実行するようにしたいのです。
user ユーザー名
pass パスワード
list
quit
----------------------------------------
しかし上記を箇条書きにして実際に
# /sbin/hoge
実行するとメールサーバーに入るところで止まってしまい
quitコマンドを入力すると以下のエラーが返ってきます。
/sbin/hoge: user: command not found
/sbin/hoge: pass: command not found
/sbin/hoge: list: command not found
/sbin/hoge: quit: command not found
記述を間違えているのでしょうから当然のエラーとは思うのですが、肝心の
記述方法が分かりません。
これが解決しないとcrontabに記述できないわけでして、どなたか分かる方は
いらっしゃらないかと思ったのです。
よろしかったら教えて下さいませ。
No.1ベストアンサー
- 回答日時:
shell scriptで書くとしたら "<<"を使うか別のファイルにかいておいて
redirectするのではないかと思います。ただ、相手の応答とかチェックでき
ないので相手が落ちてるとか、応答が遅い場合に破綻する気が...(-_^;
-----------------------------------
#! /bin/sh
PATH=/bin:/sbin:/usr/bin:/usr/sbin
export PATH
telnet メールサーバー名 110 << FOOBAR
user ユーザー名
pass パスワード
list
quit
FOOBAR
-----------------------------------
Perlのモジュールで POP3Clientというのがあり、内部的には相手の応答をみて
コマンドを送っているようなのでそれを利用した方が手早くできるかとおもい
ます。
#!/usr/local/bin/perl
use Mail::POP3Client;
$pop = new Mail::POP3Client("me", "mypassword", "pop3.do.main");
for ($i = 1; $i <= $pop->Count; $i++) {
print $pop->Head($i), "\n";
}
参考URL:http://www.freebsd.org/cgi/url.cgi?ftp://ftp.fre …
ご回答ありがとうございます。
実は自分も急を要していたので、質問を書き込んだ後にいろいろと調べているウチに、Mail::POP3というのを見つけまして、そのサイトを参考にしてスクリプトを書いたところ目的が達成できました。お手間を取らせまして、本当にありがとうございました。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- UNIX・Linux cronの@rebootでのdateコマンドの実行につきまして 2 2023/06/11 16:23
- UNIX・Linux 実行の仕方及び実行結果が分かりません。 2 2022/11/17 19:31
- その他(開発・運用・管理) WindowsからSSHでサーバーにあるファイルをダウンロードできない…。 3 2022/04/24 11:08
- その他(プログラミング・Web制作) bashのgrepで複数の検索、かつスクリプト内で改行する方法を教えてください。 1 2022/10/06 20:09
- UNIX・Linux cronでシェルスクリプト実行時のkubactlコマンドが機能しない対処法。 2 2022/08/03 18:58
- Windows 10 バッチファイルの記述法とルールについてアドバイスをお願いいたします。 1 2022/04/13 10:50
- オープンソース php-Laravelのインストールについて 1 2022/08/13 01:08
- C言語・C++・C# プログラミングのペーパーテスト 実行結果を表示せよ #include <stdio.h> int h 1 2022/07/09 15:27
- HTML・CSS 全部のアクセスを指定したページに転送させたい 2 2022/06/28 16:33
- C言語・C++・C# プログラミングのペーパーテスト 実行結果がどのように表示されるか答えよ #include <stdi 1 2022/07/09 14:27
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
スクリプトのエラー「unexpecte...
-
bashでシングルクォート内の変...
-
Linux 月を英語表示したい
-
シェルスクリプト実行で”そのよ...
-
自動パスワード入力でscpするス...
-
cron(javaプログラム)からroot...
-
シェルスクリプトで標準エラー...
-
VNC (REDHAT LINUX 8.0 and W2K)
-
cronの@rebootでのdateコマンド...
-
crontabでsql/plusの起動
-
/usr のリネーム
-
crontabで設定した内容が起動し...
-
Dirコマンドでフォルダ内ファイ...
-
エクセルの表にヘンな枠が・・・
-
TOPコマンドで表示するCPU使用...
-
SONYの音楽ソフト「x-アプリ」...
-
pingは正常なのにtracerouteで...
-
テキストファイルから最終行の抽出
-
空きIPアドレスを探す方法
-
シェルスクリプトでエラーが出ます
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
スクリプトのエラー「unexpecte...
-
bashでシングルクォート内の変...
-
Linux 月を英語表示したい
-
シェルスクリプト実行で”そのよ...
-
cronの@rebootでのdateコマンド...
-
自動パスワード入力でscpするス...
-
crontabでsql/plusの起動
-
bad interpreterで、シェルが使...
-
cronが動かない
-
cronでシェルスクリプト実行時...
-
UNIXのbashエラーでnot a valid
-
Linuxでシェルスクリプトがフル...
-
sudoでシェルスクリプトを実行...
-
ロケールをutf8からsjisにする...
-
apachectl start command not f...
-
Cronジョブの終了時刻を簡単に...
-
JAVAの環境変数が初期化されて...
-
Bシェルで文字列が日付として正...
-
Linuxで自作バッチファイルの置...
-
Homebrewをインストールしたの...
おすすめ情報