我正在嘗試使用該%appdata%變數關閉位于特定目錄中的 exe 行程,但它不起作用。
WMIC Process Where "ExecutablePath='%APPDATA%\\Adobe\\screenrecorder.exe'" Call Terminate
如果我嘗試在沒有%appdata%它按預期作業的情況下關閉該行程。
WMIC Process Where "ExecutablePath='C:\\Users\\Admin\\AppData\\Roaming\\Adobe\\screenrecorder.exe'" Call Terminate
必須使用它才能作業%appdata%,有人知道如何使用它關閉 exe 檔案嗎?%appdata%?
uj5u.com熱心網友回復:
您應該已經注意到路徑中的反斜杠需要在 WMIC 的 WHERE 子句中轉義,因此您只需擴展環境變數,并將反斜杠替換為轉義的反斜杠。這樣做的一般方法是%VariableName:CharToSubstitute=SustitutionChars%
WMIC Process Where "ExecutablePath='%AppData:\=\\%\\Adobe\\screenrecorder.exe'" Call Terminate
或者更穩健
%SystemRoot%\System32\wbem\WMIC.exe Process Where "ExecutablePath='%AppData:\=\\%\\Adobe\\screenrecorder.exe'" Call Terminate
uj5u.com熱心網友回復:
使用批處理檔案,您可以這樣嘗試:
@echo off
Title Kill Application using WMIC
Set Application=%AppData%\Adobe\screenrecorder.exe
Call :Add_backSlash %Application%
echo %Application%
pause
WMIC Process Where "ExecutablePath='%Application%'" Call Terminate
pause
EXIT
::---------------------------------------------------------------------
:Add_backSlash <String>
Rem Subroutine to replace the simple "\" by a double "\\" into a String
Set "Application=%1"
Set "String=\"
Set "NewString=\\"
Call Set "Application=%%Application:%String%=%NewString%%%"
Exit /b
::---------------------------------------------------------------------
轉載請註明出處,本文鏈接:https://www.uj5u.com/shujuku/354221.html
上一篇:模數在不應該改變的時候改變變數值
下一篇:自動將變數名稱傳遞給串列
