Batch Script - Process

你好,有志於成為程序員的你!今天,我們將要深入Batch腳本的世界,探索如何與我們Windows電腦上的進程互動。如果你是編程新手,別擔心——我會逐步引導你,並提供大量的範例和解釋。讓我們開始吧!

Batch Script - Process

檢視運行中的進程列表

在我們能夠管理進程之前,我們需要知道我們的系統上正在運行什麼。在Batch腳本中,我們有一個方便的命令叫做tasklist,它可以讓我們看到所有的活動進程。

基本使用

讓我們從tasklist命令的最簡單形式開始:

@echo off
tasklist
pause

將這段代碼保存為list_processes.bat並運行它。你會看到一長串的進程列表,包括它們的名稱、進程ID(PIDs)、內存使用量等。

篩選輸出

有時候,我們想找到特定的進程。我們可以使用篩選器來縮小我們的搜索範圍:

@echo off
tasklist /fi "imagename eq notepad.exe"
pause

這個腳本只會顯示正在運行的Notepad實例。將notepad.exe替換為你感興趣的任何進程名稱。

輸出到文件

如果我們想以後查看這些信息怎麼辦?我們可以將輸出重定向到一個文本文件:

@echo off
tasklist > process_list.txt
echo 進程列表已保存到 process_list.txt
pause

現在,你將會有一個名為process_list.txt的文件,裡面有所有運行的進程。

結束特定進程

有時候,程序可能會凍結或因其他原因需要停止。taskkill命令來拯救我們了!

基本使用

以下是如何通過名稱結束進程的方法:

@echo off
taskkill /im notepad.exe
pause

這將關閉所有的Notepad實例。使用這個權力時請小心!

通過進程ID結束

為了更精確的控制,我們可以通過進程的PID來結束它:

@echo off
tasklist /fi "imagename eq notepad.exe" /fo csv /nh > temp.txt
for /f "delims=," %%a in (temp.txt) do set pid=%%~a
taskkill /pid %pid% /f
del temp.txt
pause

這個腳本會找到Notepad的PID,然後結束它。/f標誌強制進程關閉。

結束多個進程

假設你想關閉所有的網絡瀏覽器:

@echo off
taskkill /f /im chrome.exe
taskkill /f /im firefox.exe
taskkill /f /im msedge.exe
echo 現在所有的瀏覽器應該都已經關閉了。
pause

開啟新進程

開啟進程和停止進程一樣重要。讓我們看看如何使用Batch啟動程序。

基本使用

要啟動程序,我們只需使用它的名稱或路徑:

@echo off
start notepad.exe
echo Notepad應該現在已經打開了。
pause

帶參數啟動

我們也可以為我們啟動的程序傳遞參數:

@echo off
start notepad.exe "C:\example.txt"
echo Notepad應該現在已經打開example.txt了。
pause

啟動為最小化或最大化

有時候,我們想控制程序如何啟動:

@echo off
start /min notepad.exe
echo Notepad應該現在已經打開並最小化了。
timeout /t 3
start /max calc.exe
echo 計算器應該現在已經打開並最大化了。
pause

/min/max開關控制窗口的狀態。

有用的進程管理命令

這裡是一個總結我們學到的關鍵命令的表格:

命令 描述 範例
tasklist 列出運行的進程 tasklist
taskkill 結束進程 taskkill /im notepad.exe
start 啟動新進程 start notepad.exe

記住,能力越大,責任越大。當終止進程時,總是要謹慎,因為如果不小心,可能會導致數據丟失。

結論

恭喜你!你剛剛跨出了進程管理Batch腳本世界的第一步。我們已經介紹了如何查看、結束和啟動進程,這些對任何有抱負的Windows管理員或高級用戶來說都是基礎技能。

當你練習這些命令時,你會發現自己越來越熟悉通過腳本控制電腦。這就像擁有一個秘密超能力——你可以僅僅通過幾行代碼來管理你的PC!

記住,學習的最好方式是實踐。嘗試創建你自己的腳本,嘗試不同的命令,並不要害怕犯錯誤。這是我們所有人學習和成長為程序員的方式。

繼續編程,繼續探索,最重要的是,享受其中的樂趣!誰知道呢?下次你的朋友的電腦出問題時,你可能會成為他們需要的英雄,用你新學到的Batch腳本技能。

快樂編程,願你的進程總是運行順暢!

Credits: Image by storyset