[Windows] 利用 tasklist 和 taskkill 終止遠端電腦的程序

[Windows] 利用 tasklist 和 taskkill 終止遠端電腦的程序

有時會需要在家連回公司的電腦,

最常使用的自然是 Windows 內建的遠端桌面了,

不過有時遠端桌面會突然沒有反應,這時候該怎麼辦呢?

 

根據以往的經驗,遠端桌面突然卡住有幾種可能:

 

1. 跟遠端電腦的連線斷掉了… 這個只要 ping 一下遠端電腦就可以確認了

2. 如果 ping 成功,也看到的遠端桌面,可是滑鼠鍵盤就是沒有反應呢?

 

通常狀況2有可能是因為遠端電腦在跑什麼程式,而那個程式造成了問題,

也許是那個程式吃了太多的 CPU、用了太多的記憶體之類的,

有時是因為 explorer.exe 程序當掉了導致整個桌面都沒有反應~

這時候可以利用 Windows 7 內建的 tasklisttaskkill 來嘗試解決問題

(不過僅限於本地電腦和遠端電腦是有「區域連線」或「VPN連線」的狀態喔)

 

Step 1: 用 tasklist 顯示遠端電腦現在在執行哪些程序。

tasklist 的語法如下:

tasklist /s <machine> /u <account> /p <password>

 

例如:tasklist /s myMachie /u myAccount /p “this is my password”

 

執行之後:

tasklist1    

 

Step 2: 猜測是哪個程序造成的問題。這一步不太容易,有時要靠經驗判斷。

可以看看是不是有程序用了過多的記憶體(用了幾百 MB)而平常它不會用到這麼多,

或是剛剛有執行過什麼程式之後就導致桌面當掉,也是一個線索。

如果都猜不出來的話,最終的目標就是 explorer.exe…

只不過如果砍掉 explorer.exe 的話,工作列會整個消失,

需要再用別的方法把它叫起來喔(像是用原本已經在執行的 Process Explorer)…

 

Step 3: 用 taskkill 砍掉造成問題的程序。

taskkilltasklist 的參數方式很接近,相當的方便。

taskkill /s <machine> /u <account> /p <password> /im <processName>

 

像我猜測是 Everything 這個程序吃掉了超過 1GB 的記憶體而造成了問題,

我就可以使用下列的指令來終止它:

taskkill /s myMachine /u myAccount /p “this is my password” /im everything*

taskkill1  

 

程式終止之後,桌面回復正常的話,就是砍對程序囉~

砍錯的話… 請再嘗試其他的程序看看,不過可別亂砍呀,

到時候連遠端桌面都進不去的狀況也是有可能的~~ 😛

 

 

 

//
//

(本頁面已被瀏覽過 2,081 次)

One thought on “[Windows] 利用 tasklist 和 taskkill 終止遠端電腦的程序

  1. @echo off
    WMIC PROCESS get Caption,Commandline,Processid | findstr wscript
    set /p pid=輸入想刪除的 PID:
    taskkill /f /pid %pid%

發佈留言

發佈留言必須填寫的電子郵件地址不會公開。 必填欄位標示為 *

這個網站採用 Akismet 服務減少垃圾留言。進一步了解 Akismet 如何處理網站訪客的留言資料