次のスクリプトを使用して、特定の名前付きウィンドウが開いているかどうかを確認しています。名前付きウィンドウが開いているかどうかを確認して終了するバッチファイル
私はこのスレッドからそれを得た: - オープンであることが判明した場合、理想的に私は、ウィンドウを閉じるには、他の部分を拡大していきます
How do you test if a window (by title) is already open from the command prompt?
。
@For /f "Delims=:" %A in ('tasklist /v /fi "WINDOWTITLE eq test.bat - Notepad"') do @if %A==INFO (echo Prog not running) else SET "BREX=Awesome" &echo %BREX%
残念ながら、このスクリプトを実行すると、私のelse文字列の3つのインスタンスが返されますか?
つのインスタンスを返すにこれをダウン軽減する方法はありますか?
1.あなたは、同じコマンドライン/ブロックでそれを読ん* *変数 'BREX'を設定している[遅れ拡張](http://ss64.com/nt/delayedexpansion.html) 。 2. 'tasklist'は' for/F'ループを3回繰り返す2つのヘッダ行を返します。 'skip = 2'オプションを追加してください。 – aschipfl
タスクリストで/ NHオプションを使用するだけです。 – Squashman