學習一門技術,不止要會,還要善用,例子就是帶你快速入門的最佳利器。本文就是要用例子,不,大量的例子來帶你走進PowerShell應用世界。html
本文主要介紹一些PowerShell入門的基礎知識,對技術小白來講能夠快速入門,對技術老鳥來講能夠複習鞏固,廢話很少說,直接進入正題。shell
PowerShell,相信你們早已耳熟能詳,在上篇文章中給你們介紹了PowerShell發展歷程,關於PowerShell的更多介紹,你們也能夠參考這裏:https://msdn.microsoft.com/powershell/scripting/getting-started/fundamental/using-windows-powershell。windows
如今的Windows系統中通常都集成了PowerShell,啓動方法有以下幾種:工具
a) 直接開始菜單 -> 全部程序 -> Windows PowerShell -> Windows PowerShell(不一樣系統可能路徑不同)。啓動後效果以下:學習
b) 開始菜單 -> 運行(run) -> 輸入」PowerShell」。啓動成功後和上圖同樣。3d
c) 命令提示符(Command Prompt) -> PowerShell。啓動後效果以下:orm
啓動成功後就能夠在裏面輸入要執行的命令了,這就是PowerShell的交互界面。htm
若是之前常用一些別的工具進行開發,可能會有一些可執行文件、Perl腳本、批處理文件等,若是不想放棄這些,可使用PowerShell直接運行它們。對象
a) 在系統路徑下運行程序、腳本、批處理文件或者其它可執行文件,能夠直接輸入文件名運行。好比我把一個Test.cmd文件放在了」C:\Windows\System32」下, 就能夠以下方式運行它:blog
b) 若是文件名字或路徑中有空格,須要用(')引號將命令擴起來,同時在前面加上符號(&),這種叫作調用操做:
c) 要運行當前目錄下的命令,須要文件名前加.\,如:
d) 要運行當前目錄下的命令,並且命令名字或路徑帶有空格,須要同時加上符號(&)和('):
除了支持傳統的Windows可執行文件,PowerShell還推出了一個功能強大的新的命令叫作cmdlet。全部的cmdlet命令規則都遵循動詞-名詞這種語法結構,如Get-Command、Get-Content等,以下Get-Command命令意思是獲取包含Process的全部命令集合:
其中輸入」Get-Command -Name *Process」的時候,不用輸入完整的命令名,PowerShell會幫助你使用Tab鍵來自動完成命令輸入,包括命令的名稱和參數的名稱,如這樣輸入便可:Get-Comm<Tab> -N<Tab> *Process。
a) 若要在PowerShell中執行一條任務,但苦於不知道用什麼命令的時候,這時就要查找一個命令,可使用Get-Command命令,而且它支持通配符。例子以下:
b) 若要查看一個命令的做用,可使用Get-Help命令。例子以下,還能夠指定參數-Detailed、-Full、-Examples。
c) 因爲PowerShell可使用.NET Framework中的對象,所以要想查看一個對象的屬性和方法,可使用Get-Member命令。例子以下:
有時候可能須要從批處理文件、定時任務或者其它非PowerShell程序調用PowerShell腳本,語法:PowerShell 「& ‘full path of the script’ arguments」。以下例子是從CMD調用PowerShell。
PowerShell提供了兩個變量能夠檢測最後執行的命令是否成功:$lastExitCode和$?。
$lastExitCode:數字型變量,返回最後腳本或應用程序執行返回的退出碼或出錯級別:
$?:布爾型變量,返回最後執行命令的成功仍是失敗:
變量$?使用更通用的方式來描述最後的應用程序退出的狀態,在如下應用程序發生錯誤的時候,PowerShell會設置$?爲False:
當命令執行沒有錯誤的時候,PowerShell設置$?變量爲True。
若是想計算一個命令執行時間,可使用Measure-Command命令,以下:
PowerShell一些內置命令都有別名,方便記憶和輸入,能夠用Get-Help命令查看別名,以下Get-Children的命令有三個別名:gci、ls和dir,輸入任意一個均可以列舉當前目錄。
在PowerShell窗口中,按上下箭頭鍵能夠尋找歷史命令進行調用,也能夠運行Get-History命令查找,用Invoke-History Id方式進行調用:
若是想把獲得的結果輸出到文件中,可使用Out-File命令或者重定向操做符將命令輸出的結果保存在文件中:
若是想生成當前會話的記錄,能夠運行Start-Transcript命令,它基於當前系統時間。若是想中止,運行Stop-Transcript:
使用Format-List和Format-Table命令,直接看例子:
Note:
[原創文章,轉載請註明出處,僅供學習研究之用,若有錯誤請留言,如以爲不錯請推薦,謝謝支持]
[原文:http://www.cnblogs.com/lavender000/p/6935589.html,來自永遠薰薰]