PowerShell的基本使用方法

什麼是powershell

PowerShell首先是個Shell,定義好瞭一堆命令與操作系統,特別是與文件系統交互,能夠啟動應用程序,甚至操縱應用程序。PowerShell還能允許將幾個命令組合起來放到文件裡執行,實現文件級的重用,也就是說有腳本的性質。且PowerShell能夠充分利用.Net類型和COM對象,來簡單地與各種系統交互,完成各種復雜的、自動化的操作。也可以看作是微軟系統為瞭讓shell功能像linux系統一樣強大而推出的cmd.exe的擴展。

1.   如何啟動PowerShell

現在的Windows系統中一般都集成瞭PowerShell,啟動方法有如下幾種:

a)       直接開始菜單 -> 所有程序 ->  Windows PowerShell -> Windows PowerShell(不同系統可能路徑不一樣)。啟動後效果如下:

b)      開始菜單 -> 運行(run) -> 輸入”PowerShell”。啟動成功後和上圖一樣。

c)       命令提示符(Command Prompt) -> PowerShell。啟動後效果如下:

啟動成功後就可以在裡面輸入要執行的命令瞭,這就是PowerShell的交互界面。

2.   如何運行程序、腳本和已有的軟件

如果以前經常使用一些別的工具進行開發,可能會有一些可執行文件、Perl腳本、批處理文件等,如果不想放棄這些,可以使用PowerShell直接運行它們。

a)       在系統路徑下運行程序、腳本、批處理文件或者其它可執行文件,可以直接輸入文件名運行。比如我把一個Test.cmd文件放在瞭”C:\Windows\System32”下, 就可以如下方式運行它:

b)      如果文件名字或路徑中有空格,需要用(’)引號將命令擴起來,同時在前面加上符號(&),這種叫做調用操作:

c)       要運行當前目錄下的命令,需要文件名前加.\,如:

d)      要運行當前目錄下的命令,而且命令名字或路徑帶有空格,需要同時加上符號(&)和(’):

3.   運行PowerShell命令

除瞭支持傳統的Windows可執行文件,PowerShell還推出瞭一個功能強大的新的命令叫做cmdlet。所有的cmdlet命令規則都遵循動詞-名詞這種語法結構,如Get-Command、Get-Content等,如下Get-Command命令意思是獲取包含Process的所有命令集合:

其中輸入”Get-Command -Name *Process”的時候,不用輸入完整的命令名,PowerShell會幫助你使用Tab鍵來自動完成命令輸入,包括命令的名稱和參數的名稱,如這樣輸入即可:Get-Comm<Tab> -N<Tab> *Process。

4.   如何查找指定命令以及命令詳情

a)       若要在PowerShell中執行一條任務,但苦於不知道用什麼命令的時候,這時就要查找一個命令,可以使用Get-Command命令,並且它支持通配符。例子如下:

b)      若要查看一個命令的作用,可以使用Get-Help命令。例子如下,還可以指定參數-Detailed、-Full、-Examples。

c)       由於PowerShell可以使用.NET Framework中的對象,因此要想查看一個對象的屬性和方法,可以使用Get-Member命令。例子如下:

5.   如何在外部調用PowerShell腳本

有時候可能需要從批處理文件、定時任務或者其它非PowerShell程序調用PowerShell腳本,語法:PowerShell “& ‘full path of the script’ arguments”。如下例子是從CMD調用PowerShell。

6.   如何獲知最後執行命令的狀態

PowerShell提供瞭兩個變量可以檢測最後執行的命令是否成功:$lastExitCode和$?。

$lastExitCode:數字型變量,返回最後腳本或應用程序執行返回的退出碼或出錯級別:

$?:佈爾型變量,返回最後執行命令的成功還是失敗:

變量$?使用更通用的方式來描述最後的應用程序退出的狀態,在以下應用程序發生錯誤的時候,PowerShell會設置$?為False:

應用程序退出碼非零;cmdlet或腳本輸出錯誤信息;cmdlet或腳本捕獲到終止錯誤或異常。

當命令執行沒有錯誤的時候,PowerShell設置$?變量為True。

7.   如何計算命令執行時間

如果想計算一個命令執行時間,可以使用Measure-Command命令,如下:

8.   瞭解命令的別名

PowerShell一些內置命令都有別名,方便記憶和輸入,可以用Get-Help命令查看別名,如下Get-Children的命令有三個別名:gci、ls和dir,輸入任意一個都可以列舉當前目錄。

9.   如何操作使用管理控制臺歷史命令

在PowerShell窗口中,按上下箭頭鍵可以尋找歷史命令進行調用,也可以運行Get-History命令查找,用Invoke-History Id方式進行調用:

10. 如何重定向輸出

如果想把得到的結果輸出到文件中,可以使用Out-File命令或者重定向操作符將命令輸出的結果保存在文件中:

11. 如何記錄PowerShell會話全文

如果想生成當前會話的記錄,可以運行Start-Transcript命令,它基於當前系統時間。如果想停止,運行Stop-Transcript:

12. 如何顯示對象屬性為列表或表格

使用Format-List和Format-Table命令,直接看例子:

13. 如何連接虛擬機中的系統

到此這篇關於PowerShell的基本使用方法的文章就介紹到這瞭,更多相關PowerShell 使用 內容請搜索WalkonNet以前的文章或繼續瀏覽下面的相關文章希望大傢以後多多支持WalkonNet!

推薦閱讀: