2012-04-25 6 views
2

バッチファイルを作成して、ポート80の使用可能性を自動的にチェックし、別のプログラムで使用している場合はエラーメッセージを表示します。しかし、バッチファイルでポート80の可用性をチェックする方法がわかりません。Windowsでバッチファイルを使用してポート80を使用できるかどうかを確認する方法xp

端末で確認するには、次のコマンドがあります。

netstat -o -n -a | findstr 0.0:80 

しかし

if (!//port 80 is available) { 
    // Give an error message 
} else { 
    // Continue with the rest 
} 

誰かがこの上で私を助けてくださいを次のように私は、バッチファイルでそれをチェックする必要があります。

答えて

9

あなたは、このように試みることができる:

@echo off 
netstat -o -n -a | findstr ZXCZXCZCZX 
if %ERRORLEVEL% equ 0 (@echo "port taken") 
ELSE (@echo "port available") 

項目がFINDSTRは%ERRORLEVEL%> 0
を返します。見つからなかった場合には(Windows 7の64ビット版でのコマンドコンソールでテスト)

+0

それは、私とうまく動作します。 :)ポート80を使用しているプログラム名を出力することができます – Thilanka

+0

@Thilanka申し訳ありませんが、私はいくつかのバリエーションを試しましたが、良い解決策を見つけることができません。問題はnetstatとプロセス名を出力するフラグ-bですが、別の行にあり、findstrはそれを見つけることができません。 [Microsoft SysInternals](http://www.sysinternals.com)からもtcpvconを試しましたが、出力にポート番号 – Steve

+0

が含まれていません。 "netstat -o -n -a | findstr ZXCZXCZCZX"コマンドは、ターミナル。しかし、問題はそれが名前ではなくIDだけを表示することです。名前を印刷することができれば十分です。 – Thilanka

関連する問題