[英]Reading a value from a file in a windows batch script
我正在嘗試從文件中讀取值並在后續命令中使用它。
我有一個名為AppServer.pid
的文件,其中包含我的應用服務器的進程ID(只是數字,它不是屬性文件或類似的東西)。
應用服務器掛起,所以我想獲取此值並將其傳遞給kill命令。 所以我的腳本會是這樣的
SET VALUE_FROM_FILE=AppServer.pid # or something
taskkill /pid %VALUE_FROM_FILE% /f
有沒有一種方便的方法在Windows腳本中執行此操作?
這有效:
SET /P VALUE_FROM_FILE= < AppServer.pid
taskkill /pid %VALUE_FROM_FILE% /f
與SET一起使用的/ P參數允許您使用用戶的輸入設置參數的值(或者在這種情況下,從文件輸入)
for /f %%G in (appid.txt) do (SET PID=%%G)
echo %PID%
taskkill etc here...
這可能有所幫助!
如果您知道從命令tasklist
返回的進程名稱,則可以使用進程名稱上的過濾器運行taskkill
,即/FI IMAGENAME eq %process_name%
。
例如,要殺死名為nginx.exe
所有進程運行:
taskkill /F /FI "IMAGENAME eq nginx.exe"
哪個“英文讀取”:殺死所有與過濾器/FI
“IMAGENAME等於nginx.exe”相匹配的任務(如果需要通過/F
強制執行)。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.