2017-06-14 5 views
-4

jarファイルの実行後にTomcatが使用可能かどうかを確認しようとしています。私はこのコードをStackOverflowで見つけたので、Windowsのbashに相当するコードを書いてみたいと思います。Windows上でHTTPポートが開いていることを確認してください。

私の考えは、ファイル内にログインしてTomcatが、これは私のコードである

をロードし終えたときに表示される文のログ・ファイルの各10 secondesをチェックすることです:

@echo off 
start javaw -jar ICAPS_DASHBOARD-0.1.0-SNAPSHOT.jar 1>> log.txt 
::loop will be here 
findstr /m "Started IcapsDashboardApplication" log.txt 
if %errorlevel%==0 (
echo There is hope! 
goto fin 
) 
echo no hope 
:fin 
echo fin 
pause >nul 

が、私は何も得ますログファイル と私が行う場合

javaw -jar ICAPS_DASHBOARD-0.1.0-SNAPSHOT.jar 1>> log.txt 

彼は以下のコマンドを実行しません。 おかげ

+1

SOは無料の翻訳サービスではありません。これまでに何を試してみましたか(あなたのコードを見せてください)、そしてあなたのコードには何の問題がありますか? –

+0

あなたはおそらく私はいくつかのコードを追加しようとするでしょう:) – mustafa918

+0

@AnsgarWiechersあなたはこの編集をしてくださいを参照してください – mustafa918

答えて

1

あなたは(クレジットは私が覚えている限りでは、トビアスWeltnerに行く)この機能を使用することができます:PowerShellの2を使用している場合、あなたが必要とする:

function Test-NetworkPort 
{ 
    param 
    (
     $ComputerName = $env:COMPUTERNAME, 
     [int32[]] 
     [Parameter(ValueFromPipeline=$true)] 
     $Port = $(137..139 + 443 + 445), 
     [int32] 
     $Timeout=1000, 
     [switch] 
     $AllResults 
    ) 
    process 
    { 
     $count = 0 
     ForEach ($PortNumber in $Port) 
     { 
      $count ++ 
      $perc = $count * 100/$Port.Count 
      Write-Progress -Activity "Scanning on \\$ComputerName" -Status "Port $PortNumber" -PercentComplete $perc 
      # in PowerShell 2.0 muss [Ordered] entfernt werden 
      # dann ist die Reihenfolge der Eigenschaften aber zufällig. 
      $result = New-Object PSObject -Property ([Ordered]@{ 
       Port="$PortNumber" 
       Open=$False 
       Type='TCP' 
       ComputerName=$ComputerName 
       }) 
      $TCPClient = New-Object System.Net.Sockets.TcpClient 
      $Connection = $TCPClient.BeginConnect($ComputerName, $PortNumber, $null, $null) 
      try 
      { 
       if ($Connection.AsyncWaitHandle.WaitOne($Timeout, $false)) 
       { 
        $null = $TCPClient.EndConnect($Connection) 
        $result.Open = $true 
       } 
      } 
      catch {} 
    finally { $TCPClient.Close() } 
      $result | Where-Object { $AllResults -or $_.Open } 
     } 
    } 
} 

このTest-NetworkPort -Computername Tomcat1 -Port 80, 8080, 443 -Allresults

備考ようにそれを使用します24行目の単語[orderedを削除する

+0

ありがとう、私は簡単なコードが必要です – mustafa918

関連する問題