從零開始——PowerShell應用入門(全例子解析)

編程語言 腳本語言 Windows Perl 薰薰熊的技術分享社區 2017-06-08

學習一門技術,不止要會,還要善用,例子就是帶你快速入門的最佳利器。本文就是要用例子,不,大量的例子來帶你走進PowerShell應用世界。

本文主要介紹一些PowerShell入門的基礎知識,對技術小白來說可以快速入門,對技術老鳥來說可以複習鞏固,廢話不多說,直接進入正題。

PowerShell,相信大家早已耳熟能詳,在上篇文章中給大家介紹了PowerShell發展歷程,關於PowerShell的更多介紹,大家也可以參考微軟MSDN站點:Using Windows PowerShell。

1.如何啟動PowerShell

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

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

從零開始——PowerShell應用入門(全例子解析)

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

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

從零開始——PowerShell應用入門(全例子解析)

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

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

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

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

從零開始——PowerShell應用入門(全例子解析)

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

從零開始——PowerShell應用入門(全例子解析)

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

從零開始——PowerShell應用入門(全例子解析)

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

從零開始——PowerShell應用入門(全例子解析)

3.運行PowerShell命令

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

從零開始——PowerShell應用入門(全例子解析)

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

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

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

從零開始——PowerShell應用入門(全例子解析)

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

從零開始——PowerShell應用入門(全例子解析)

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

從零開始——PowerShell應用入門(全例子解析)

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

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

從零開始——PowerShell應用入門(全例子解析)

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

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

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

從零開始——PowerShell應用入門(全例子解析)

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

從零開始——PowerShell應用入門(全例子解析)

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

  • 應用程序退出碼非零;

  • cmdlet或腳本輸出錯誤信息;

  • cmdlet或腳本捕獲到終止錯誤或異常。

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

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

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

從零開始——PowerShell應用入門(全例子解析)

8.瞭解命令的別名

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

從零開始——PowerShell應用入門(全例子解析)

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

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

從零開始——PowerShell應用入門(全例子解析)

從零開始——PowerShell應用入門(全例子解析)

10. 如何重定向輸出

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

從零開始——PowerShell應用入門(全例子解析)

11. 如何記錄PowerShell會話全文

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

從零開始——PowerShell應用入門(全例子解析)

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

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

從零開始——PowerShell應用入門(全例子解析)

從零開始——PowerShell應用入門(全例子解析)

Note:

  • 本文介紹的所有命令都可以用Get-Help獲取詳細信息,瞭解詳情後才能夠更好的使用(學習使用PowerShell過程中Get-Help/Get-Command/Get-Member是最常用的三大命令,要學會善用)。

  • Windows PowerShell的基本使用方法完全不限於上述例子,學會這些,只是幫助入門,可以更好的繼續向下學習。

  • 未來會有繼續細緻的更新,敬請期待。

從零開始——PowerShell應用入門(全例子解析)

[本人原創文章,僅供學習研究之用,如有錯誤請留言,如覺得不錯請推薦分享,謝謝支持]

[更詳細的內容請參考:本人博客園——薰薰熊的技術分享社區 by 永遠薰薰]

相關推薦

推薦中...