Windows操作系統(tǒng)作為優(yōu)秀的操作系統(tǒng),由開發(fā)操作系統(tǒng)的微軟公司控制接口和設(shè)計,公開標(biāo)準(zhǔn),因此,有大量商業(yè)公司在該操作系統(tǒng)上開發(fā)商業(yè)軟件。 大多數(shù)剛?cè)腴T的管理員都習(xí)慣使用 RDP 或其它類似的工具連接到遠(yuǎn)程 Windows 中進(jìn)行圖形化管理。而 PowerShell 及 PsTools 等工具可以幫助我們在命令行中執(zhí)行相當(dāng)多的管理任務(wù),更主要的是可以將其寫成腳本來執(zhí)行周期性重復(fù)任務(wù)或在管理大批量服務(wù)器時提高效率。 在企業(yè)環(huán)境中掌握更多的命令行工具不僅可以節(jié)省時間,以更聰明和智能的方式完成工作,更是一個系統(tǒng)管理員所必需掌握的關(guān)鍵技能。 作為 Sysinternals 工具包中的一個子集,PsTools 本身就有十來個命令行小工具,下面我們會逐個為大家進(jìn)行介紹:
以上所有命令都可以直接在本地計算機(jī)上使用,不過 PsTools 設(shè)計出來就是為了方便對遠(yuǎn)程 PC 進(jìn)行管理的。 連接遠(yuǎn)程計算機(jī)PsTools 所有工具連接遠(yuǎn)程計算機(jī)都可以使用同一個通用語法,例如: psinfo \pc1,pc2,pc3 雙斜杠后面可以直接跟計算機(jī)名(可以解析netbios)、IP 地址或 FQDN,也可以在命令后跟多臺計算機(jī)以實現(xiàn)批量。 如果你不是以域管理員等有權(quán)限的用戶來執(zhí)行命令、沒有域環(huán)境或者需要手動指定有權(quán)限的遠(yuǎn)程用戶,可用 -u 參數(shù)指定用戶,-p 參數(shù)指定密碼。 psinfo \computername –u user –p Password 如果是域環(huán)境,需要將用戶寫為「DOMAINuser」樣式。 配置遠(yuǎn)程管理權(quán)限PsTools 工具在域中可以工作得非常好,管理員不必考慮過多的權(quán)限問題。但對于工作組環(huán)境中的 Windows Vista/7/8/10,需要調(diào)整遠(yuǎn)程計算機(jī)上的用戶賬戶控制(UAC)之后 PsTools 工具才能正常運(yùn)行。 即便你是遠(yuǎn)程目標(biāo) PC 的 Local Administrators 組成員,在使用命令行進(jìn)行遠(yuǎn)程連接時還是會使用類似 net use * \remotecomputerShare$ 的方式,這不被 Windows 視為有完全管理員權(quán)限。因為連接到遠(yuǎn)程計算機(jī)需要有權(quán)限才能執(zhí)行管理任務(wù),命令行連接方式也無法觸發(fā) UAC,所以直接遠(yuǎn)程連接使用 PsTools 工具遠(yuǎn)程連接工作組計算機(jī)會報權(quán)限錯誤。 要保證 PsTools 工具能在工作組環(huán)境中正常使用,你需要更改注冊表: HKEY_LOCAL_MACHINESOFTWAREMicrosoftWindowsCurrentVersionPoliciesSystem 在上述注冊表路徑中創(chuàng)建一個名為 LocalAccountTokenFilterPolicy 的 32 位 DWORD 值,并將其值設(shè)置為 1 即可。 PsExecPsExec 是 PsTools 工具系列中最為常用的一個命令行工具,它可以讓我們在本地或遠(yuǎn)程計算機(jī)上「運(yùn)行」任何東西,包括更改注冊表、執(zhí)行腳本或應(yīng)用程序等。參數(shù)類似: psexec \計算機(jī)名 <選項> apptorun.exe <參數(shù)>參數(shù)>選項> 例如你想查看某個遠(yuǎn)程計算機(jī)的 TCP/IP 配置,可以使用如下命令: psexec \計算機(jī)名 -u User -p Password ipconfig 如果你將命令輸出重定向到一個文件中,可以使用常見的 command.exe > output.txt 方式,這種方式對 PsExec 命令同樣適用,例如我們可以使用類似如下命令將 netstat -an 的輸出保存到本地文本文件中: psexec \計算機(jī)名 netstat -an > C:etstat.txt 如果你想將命令的重定向輸出結(jié)果直接保存到遠(yuǎn)程 PC 當(dāng)中,可以使用很少有人知道的 ^?這個Windows 命令行轉(zhuǎn)義符,例如: psexec \計算機(jī)名 cmd /c netstat -an ^> C:userssysgeeketstat.txt 拷貝命令到遠(yuǎn)程PC有時我們需要執(zhí)行的 CDM 外部命令并沒有存在于遠(yuǎn)程計算機(jī)當(dāng)中,此時我們可以使用 PsExec 的 -c 參數(shù)來指定一個存放于管理員本地的外部命令或應(yīng)用。當(dāng)我們執(zhí)行命令時,PsExec 會自動將所指定的應(yīng)用復(fù)制到遠(yuǎn)程 PC 中執(zhí)行,并在執(zhí)行完成后自動刪除。例如: psexec \計算機(jī)名 -c autorunsc.exe –accepteula PsFilepsfile 命令可以顯示本地或遠(yuǎn)程 PC 中通過網(wǎng)絡(luò)打開的文件,其類似于命令行中的 net file 命令,及我們之前介紹過的 NetworkOpenedFiles 圖形界面工具。 psfile \計算機(jī)名 如果你想中斷某個共享的訪問連接,可以使用 -c 參數(shù): psfile \計算機(jī)名 <路徑> –c路徑> PsInfoPsInfo 主要用于顯示 Windows 操作系統(tǒng)版本、系統(tǒng)運(yùn)行時長及個別硬件的簡單信息,如果你想獲取更詳盡的信息,可以使用 -d(磁盤信息)、-h(補(bǔ)丁信息)、-s(已知應(yīng)用程序版本列表)參數(shù),這樣一來就比較像 Windows 內(nèi)置的 systeminfo 命令行了。 psinfo -d -h -s 注意:要使用 PsInfo 獲取遠(yuǎn)程計算機(jī)信息,目標(biāo) PC 必需啟用了 Remote Registry 服務(wù)。 PsGetSidPsGetSid 功能非常簡單,就是用于獲取 Machine SID 的。 PsKillPsKill 看名稱就不難猜,它可按進(jìn)程名或 PID 結(jié)束進(jìn)程,使用 -t 參數(shù)可以殺掉整個進(jìn)程樹。 pskill \計算機(jī)名 PsListPsList 非常簡單,它可以通過列表方式看到進(jìn)程的幾乎所有信息,包括線程數(shù)。 PsLoggedOnPsLoggedOn 命令主要用于查看本地或遠(yuǎn)程 PC 上當(dāng)前登錄的用戶信息,對于系統(tǒng)管理員來說非常實用。 PsPingPsPing 是一個可對指定端口進(jìn)行 TCP 或 UDP 連接測試的工具,該工具可用于替代 telnet 命令進(jìn)行連接測試,我個人經(jīng)常用其來測試連接 Azure 各項服務(wù)的響應(yīng)速度。 psping IP地址或域名:80 PsPasswdPsPasswd 用于快速更改本地或遠(yuǎn)程 PC 的用戶密碼,例如: pspasswd \計算機(jī)名 -u User -p Password <賬戶名稱> <新密碼>新密碼>賬戶名稱> 該命令相較 net user 的好處在于可以一次性批量修改多臺計算機(jī)的密碼,對于域管理員批量重置某些本地賬戶密碼時非常有用。 PsShutdown該命令主要是針對早期 Windows XP 用戶設(shè)計,現(xiàn)在 Windows 中內(nèi)置的 Shutdown.exe 命令已經(jīng)非常強(qiáng)大了,所以使用較少。我們還是可以使用 PsShutdown 的 -d 參數(shù)讓計算機(jī)進(jìn)入睡眠模式。 PsSuspend該命令行工具與 PsKill 比較類似但不是殺掉進(jìn)程,它主要用于暫停某個進(jìn)程的工作。 pssuspend \計算機(jī)名 要將已暫停的進(jìn)程恢復(fù)到工作狀態(tài),只需加上 -r 參數(shù)即可。 PsServicePsService 命令行工具可操作 Windows 中的各種服務(wù),其語法如下: psservice \計算機(jī)名 <操作> <服務(wù)名>服務(wù)名>操作> 例如,要啟用某個服務(wù)時,命令行如下: psservice \計算機(jī)名 start 用的操作有start(啟動)、stop(停止)、pause(暫停)、restart(重啟),要查看詳細(xì)參數(shù)可以使用 PsService /?。 該工具與 Windows 內(nèi)置的 sc.exe 命令比較類似,但使用 PsService 對管理員更友好。 PsLogListPsLogList 顧名思義是用于查看本地或遠(yuǎn)程 PC 中的 Event Log(事件日志)的命令行工具,它內(nèi)有很好用的數(shù)據(jù)篩選功能。 psloglist \計算機(jī)名 其中的 -h、-d、-m 參數(shù)可以按小時、天、月來縮小返回的事件時間范圍,-n 參數(shù)用于指定要返回的條數(shù),-r 可以反向排序。例如我們要查看遠(yuǎn)程計算機(jī)中近 1 小時的 3 個事件日志,可以使用: psloglist \計算機(jī)名 -h 1 -n 3 Windows操作系統(tǒng)對硬件支持良好。 |
溫馨提示:喜歡本站的話,請收藏一下本站!