共用方式為


Windows PowerShell:PowerShell.exe

與許多其他 Windows PowerShell 函數一樣有不止一種方法,首先打開它。

Don Jones

大多數時候,你要打開 Windows PowerShell 使用開始功能表快捷方式。 但是,也有當你要以程式設計方式啟動一個新的 shell 會話的時代。 這是去當你調度的腳本,或有作為外部的批次檔的一部分運行的腳本的方法。

在那些和其它許多情況下,完成您的需要的關鍵將是 PowerShell.exe 可執行檔。 您可以在 Windows PowerShell 安裝資料夾中找到此。

PowerShell.exe 啟動一個新的主控台殼會話,但它可以做得更多。 該命令來充分具備一群告訴它如何表現的命令列參數。 運行 PowerShell-嗎? 從命令列的完整清單或讀上的亮點。

運行命令

–Command 參數接受單個 Windows PowerShell 命令,連同命令需要的任何參數。 如果它包含任何空格或參數,請將整個命令字串括在引號中。 如果需要,還可以包括多個 cmdlet,完整管道。

您也可以使用 –file 參數。 這接受的路徑和檔案名。PS1 檔。 Windows PowerShell 然後將執行該檔的內容。 這是更簡單的方法來運行一系列複雜的比試圖干擾他們都到 –command 參數的命令。 請記住殼牌的執行政策對影響腳本的執行,把我們帶到下一個點。

執行策略

–Executionpolicyparameters 接受 Windows PowerShell 執行策略設置之一:無限制的、 AllSigned、 RemoteSigned 和限制。 無論您指定將生效,殼僅為會話,並將覆蓋以前設置本地集 ExecutionPolicy 或通過群組原則物件 (GPO) 的任何策略。

稍等,這不是一個安全問題嗎? GPO 不應該不能被重寫的嗎? 沒有,沒有。 執行策略並不是一個防火牆,並不是反惡意軟體。 它旨在防止無知的使用者無意中執行一個不受信任的腳本。 如果你用指定的 –executionpolicy 參數,根據定義,正在故意做。 因此,您接受這一行動的後果。

捕獲輸出

通常情況下,無論運行在 Windows PowerShell 會話中將輸出的 PowerShell.exe 作為文本。 如果你想做的就是,捕獲到一個文字檔,這是很可能不夠好。

然而,或者可以指定 XML 有捕獲物件由 shell 腳本或命令輸出的 PowerShell.exe –outputformat。 然後可以將這些物件序列化到 CliXML 檔中。 這是本質上相同,如果你有出口 CliXML 的殼管物件。 它為您提供了您可以更輕鬆地重新導入到另一個 shell 會話的輸出格式。

其他伎倆

有三個你要知道其他命令列參數:

  • -noProfile 阻止 Windows PowerShell 載入任何設定檔腳本執行。 如果您知道您將不需要,無論是在本地設定檔腳本中,未載入它們可以節省一點時間。 如果您有一個設定檔,導致的問題,這也是一個有用的技巧。 您可以打開沒有它的外殼,並開始進行故障診斷。
  • -noExit 告訴 shell 執行任何指定的 –command 或 –file,但後來保持打開狀態的外殼。 通常情況下,使用那些兩個參數之一關閉外殼當它完成,這是您通常會希望。 使用 –noExit,可以繼續使用外殼。 這是很有用的調試和檢查結果的不管你只是跑了。
  • -非互動式告訴運行,但不為使用者提供了一個互動式的提示符殼。 您經常使用此配合 –command 或 –file。

掌握 PowerShell.exe

使用 PowerShell.exe 為您提供多種選項執行腳本,控制輸出等。 不論你用它來安排的腳本,運行登入指令檔,作為較大的批次處理或一些其他目的的一部分運行的命令,是起袖子有良好的技巧。

Don_Jones

**Don Jones**是 Microsoft MVP 獎得主和"學習 Windows PowerShell 中月的午餐 」 (曼甯發佈 2011年),旨在説明成為有效的 Windows PowerShell 任何管理員一本書的作者。 鐘斯還提供公共和現場 Windows PowerShell 培訓。 通過 ConcentratedTech.com 或 bit.ly/AskDon 與他聯繫。

相關內容