Windows(W2K, XP, 2003srv)のコンソールで、標準出力を(またはエラー出力も)ロギングしながら(ファイルへ書き出し)、画面にも出力する方法を教えてください。

自ホストへtelnetでログインしてログを取得するといった方法はセキュリティ面で使用したくありません。
具体的には、netstatなどで結果をファイルに落としながら、かつ画面にも出力したいのです。
よろしくお願いします。

回答の条件
  • URL必須
  • 1人3回まで
  • 登録:2006/05/25 17:02:19
  • 終了:2006/05/30 19:58:53

回答(4件)

id:tadashi0805 No.1

tadashi0805回答回数287ベストアンサー獲得回数292006/05/25 17:11:08

ポイント20pt

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

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

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

id:atmcjj

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

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

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

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

2006/05/26 18:31:46
id:naochin No.2

naochin回答回数170ベストアンサー獲得回数82006/05/25 17:35:55

ポイント21pt

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

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

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

id:atmcjj

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

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

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

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

2006/05/26 18:34:07
id:kamonegijapan No.3

foobar回答回数74ベストアンサー獲得回数32006/05/25 18:54:34

ポイント19pt

netstat > hoge.txt

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

type hoge.txt

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

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

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

id:atmcjj

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

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

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

2006/05/26 18:37:54
id:naochin No.4

naochin回答回数170ベストアンサー獲得回数82006/05/26 23:28:12

ポイント30pt

私のyatte.exeですが、

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

出力の直後に、

fflush(stdout);

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


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

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

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

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

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

id:atmcjj

ありがとうございます。

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

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

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

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

2006/05/27 20:06:58
  • id:atmcjj
    naochin様のソースを改変してみましたが、残念ながら目的は達せられませんでした。
    よく考えますとちょっと無理な気がします。
    オリジナルのyateeにfflush入れる入れないにかかわらずファイルに書き出しません。
    単純リダイレクトでも、途中(実行中)ではファイルに書き出さないようなので、tee(POSIX版でも同様)の仕様では無理のようです。
    とりあえず実行面では、telnetログ(Windows版sshがあれば尚良いんですが…)で我慢し、いずれ、POSIXコードのnetstatを取り寄せ、Windows版に移植することにします。
    3名の方々コメントありがとうございました。

この質問への反応(ブックマークコメント)

「あの人に答えてほしい」「この質問はあの人が答えられそう」というときに、回答リクエストを送ってみてましょう。

これ以上回答リクエストを送信することはできません。制限について

絞り込み :
はてなココの「ともだち」を表示します。
回答リクエストを送信したユーザーはいません