人力検索はてな
モバイル版を表示しています。PC版はこちら
i-mobile

Windows(W2K, XP, 2003srv)のコンソールで、標準出力を(またはエラー出力も)ロギングしながら(ファイルへ書き出し)、画面にも出力する方法を教えてください。
自ホストへtelnetでログインしてログを取得するといった方法はセキュリティ面で使用したくありません。
具体的には、netstatなどで結果をファイルに落としながら、かつ画面にも出力したいのです。
よろしくお願いします。

●質問者: atmcjj
●カテゴリ:コンピュータ
✍キーワード:netstat Telnet Windows XP エラー
○ 状態 :終了
└ 回答数 : 4/4件

▽最新の回答へ

1 ● tadashi0805
●20ポイント

Linuxだと、teeというコマンドで実現できます。

それをWindowsに移植したものがありますので、それを使えば可能だと思います。

http://www.piedey.co.jp/softs/ntuxtl.html

◎質問者からの返答

回答ありがとうございます。

どうも私の質問し方が悪かったようです。

"tee"は(POSIX版も同様かと思いますが)、当該プロセス今般の場合、"netstat"がターミネートしないと結果を出力しないようです。例えば"netstat -n 5"のように実行しますと、5秒ごとの標準出力を見ることが出来ません。

Linuxなどで長時間makeを実行した際、標準出力で結果を見つつファイルロギングすると言った使い方と同様な状況を"netstat"でも実現できないかと思ったものです。


2 ● naochin
●21ポイント

unixではteeというプログラムで実現できます。

Windows用に私の自作のソフトウェアyateeというのがあります。

http://www.vector.co.jp/soft/win95/util/se196633.html

◎質問者からの返答

回答ありがとうございます。

tadashi0805様の回答と同様の状況です。

naochin様のプログラムはソース添付であり、感謝に堪えません。

が目的は達せられません。


3 ● foobar
●19ポイント

netstat > hoge.txt

でファイルに出力しておいて、

type hoge.txt

で標準出力にファイルの内容を表示するのではダメですか?

http://www.k-cube.co.jp/wakaba/server/redirect_and_pipe.html

コマンド一発でやりたい、ということでしょうか。

◎質問者からの返答

ごめんなさい、私の質問がとても悪かったようです。

tadashi0805様、naochin様の回答への返信のとおりです。

ftpやnslookupなども同様ですがサブコマンドに入ってしまうような使い方ですと標準出力(またはエラー出力)に結果が返ってこないと、次のコマンドを投入できません。


4 ● naochin
●30ポイント

私のyatte.exeですが、

もし、コンパイラがあるのなら、

出力の直後に、

fflush(stdout);

を入れてやれば目的に合致するかもしれません。


あと、自ホストにtelnetですが

telnetサーバをちゃんとID/Passwordを設定した上で

localhostに対してtelnetを行うと、外にパケットはとばないのでセキュリティ上の問題は発生しないと思われますが、いかがでしょうか。

あと、念のためにポート番号をかえておくとよいかと。

http://www.atmarkit.co.jp/fwin2k/xp_feature/011firewall/firewall...

◎質問者からの返答

ありがとうございます。

なるほど…OSのバッファリングに任せず、適時吐き出せですか。せっかくですので試してみます。

telnetdも有効にしつつもポートナンバーを変えてと言うことですね。

cmd.exeで"2>&1"や"&"(バックグランド起動)が効けばよろしいでしょうが…

naochin様のコードを利用させていただいてその結果をお知らせします。

関連質問


●質問をもっと探す●



0.人力検索はてなトップ
8.このページを友達に紹介
9.このページの先頭へ
対応機種一覧
お問い合わせ
ヘルプ/お知らせ
ログイン
無料ユーザー登録
はてなトップ