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