2016-11-19 20 views

答えて

0
for /r %%i in (*.exe) do tasklist|findstr /i /b /L /c:"%%~nxi" >nul&if errorlevel 1 start "" /b "%%i" 

これは/bは、文字列「%% i」は/iかかわらず、ケースの(任意の出力を処分)が/C:と文字通り/Lを開始することラインを探しfindstrに結果を送信する、tasklist行います。 findstrに一致する文字列が見つからない場合は、errorlevelを1に設定します。if文は、errorlevelが1以上のときを検出します。見つからない場合は開始します。

+0

条件付き実行でも少し短くすることができます。 '%% i"> nul ||開始 ""/b "%% i" ' – Squashman

+0

(/ * %% i)なぜなら、tasklist | findstrはパス名ではなくexe名だけを返すからです。 –

+1

OK - 固定されています( 'ixの前に'〜nx'を挿入してください)。名前と拡張子のみを選択するための 'findstr'文字列 – Magoo

関連する問題