31

タイトルにスペースが含まれるコンソール ウィンドウで taskkill を実行しようとしています。このウィンドウ タイトルを taskkill に渡すにはどうすればよいですか。私は次のことを試しました:

taskkill /fi "WINDOWTITLE eq Administrator: My Window Title"
4

6 に答える 6

56

私は同様の問題を抱えていましたが、もう少し知りました。

問題

独自のウィンドウ タイトルを設定した CMD ウィンドウ (管理者として実行) を閉じようとしています。したがって、CMD を管理者として実行し、次のように入力します。

title CMD with custom title

いろいろいじった後、次のコマンドは、ウィンドウのタイトルを設定すると、タイトルの前に先頭のスペースを置くことを示しました! (理由はわかりません。)

c:\>tasklist /V /FI "WindowTitle eq Administrator*"

Image Name  PID Session Name Session# Mem Usage Status  User Name       CPU Time Window Title
========== ==== ============ ======== ========= ======= =============== ======== =====================================
cmd.exe    4304 Console             1   2,492 K Running MACHINE\My Name  0:00:00 Administrator:  CMD with custom title
                                                                                               
(scroll )                                                                               extra space

解決

したがって、プロセスを強制終了するには:

taskkill /F /FI "WindowTitle eq  Administrator:  CMD with custom title" /T
                                               
                                             bingo
  • /F- 力を使います。
  • /T- 子プロセスを殺します。

同様の方法で頭をぶつけている場合は、 を使用tasklistしてプロセス プロパティ内を調べて、フィルターが正しく設定されていることを確認することをお勧めします。Windows 8 によってもたらされたこの問題。

注:タイトルに引用符が含まれている場合は、ネストされたものをエスケープするだけです。

title "CMD with custom title"

taskkill /F /FI "WindowTitle eq  Administrator:  \"CMD with custom title\"" /T
于 2013-03-14T11:51:48.047 に答える
2

このタスクは Windows サーバーで実行されると思います。タイトルに「Administrator :」が含まれている場合、WindowTitle でタスクを強制終了することはできません。

これを使用する必要があります: これは私の killer.bat です。SEARCH_PARAMETER = 殺したいタイトル

@echo off
            for /f "tokens=2 delims=," %%a in ('
tasklist /fi "imagename eq cmd.exe" /v /fo:csv /nh 
^| findstr /r /c:".*SEARCH_PARAMETER[^,]*$" ') do taskkill /pid %%a
于 2016-11-17T11:24:30.333 に答える
0

私は AutoIt を使用してコマンド シェル ウィンドウを起動していましたが、タスクリストの使用に関するヒントは本当に役に立ちました。すでに二重スペースを試しましたが、AutoIt の Run() コマンドは、タスクリスト/タスクキルがウィンドウ タイトルを認識できない方法で cmd.exe シェルを作成しました。

cmd プロンプトのウィンドウ タイトルでループまたは AutoIt の WinKill()/WinClose() を使用すると、AutoIt 自体はウィンドウを閉じることができますが、cmd プロンプトのバット ファイルは c:\windows\system32\cmd しかウィンドウ タイトルとして認識しませんでした。

この場合、バッチ スクリプトからではなく、AutoIt を使用してウィンドウを強制終了することができました。

于 2014-09-10T17:00:51.853 に答える