ที่สุดของ TechEd 2013: Powershell Unplugged

ไอคอนเวลาอ่านหนังสือ 9 นาที. อ่าน


ผู้อ่านช่วยสนับสนุน MSpoweruser เราอาจได้รับค่าคอมมิชชันหากคุณซื้อผ่านลิงก์ของเรา ไอคอนคำแนะนำเครื่องมือ

อ่านหน้าการเปิดเผยข้อมูลของเราเพื่อดูว่าคุณจะช่วย MSPoweruser รักษาทีมบรรณาธิการได้อย่างไร อ่านเพิ่มเติม

Microsoft ใช้ประโยชน์จาก ได้ที่ TechEd ทางช่อง 9เป็นทรัพยากรที่ยอดเยี่ยมและข้อมูลมากมาย ฉันได้ค่อยๆ กลั่นกรองเซสชั่นต่างๆ และนี่คือซีรีส์ต่อเนื่องของเราเกี่ยวกับการเจรจา TechEd 2013 ที่ดีที่สุดที่นิวออร์ลีนส์

วิศวกรผู้มีชื่อเสียง Jeffrey Snover ให้ภาพรวมที่ดีเกี่ยวกับวิธีการเริ่มต้นใช้งาน PowerShell Powershell มีความสำคัญมากขึ้นเรื่อยๆ ใน Microsoft โดยเฉพาะอย่างยิ่งหากคุณใช้งาน Windows Azure อย่างหนัก Microsoft ตัดสินใจที่จะไม่อัปเดตพรอมต์คำสั่งอย่างมีนัยสำคัญบางส่วนเนื่องจากเหตุผลเดิม

นี่คือสิ่งที่ใหม่ใน PowerShell 4.0:

คุณลักษณะใหม่ใน Windows PowerShell

  • การกำหนดค่าสถานะที่ต้องการของ Windows PowerShell (DSC) เป็นระบบการจัดการใหม่ใน Windows PowerShell 4.0 ที่ช่วยให้สามารถปรับใช้และจัดการข้อมูลการกำหนดค่าสำหรับบริการซอฟต์แวร์ และสภาพแวดล้อมที่บริการเหล่านี้ทำงาน สำหรับข้อมูลเพิ่มเติมเกี่ยวกับ DSC โปรดดูที่ เริ่มต้นใช้งาน Windows PowerShell การกำหนดค่าสถานะที่ต้องการ.
  • บันทึก-ช่วยเหลือ ตอนนี้ให้คุณบันทึกความช่วยเหลือสำหรับโมดูลที่ติดตั้งบนคอมพิวเตอร์ระยะไกลได้แล้ว คุณสามารถใช้ Save-Help เพื่อดาวน์โหลดวิธีใช้โมดูลจากไคลเอนต์ที่เชื่อมต่ออินเทอร์เน็ต (ซึ่งไม่จำเป็นต้องติดตั้งโมดูลทั้งหมดที่คุณต้องการความช่วยเหลือ) จากนั้นคัดลอกวิธีใช้ที่บันทึกไว้ไปยังโฟลเดอร์แชร์ระยะไกลหรือคอมพิวเตอร์ระยะไกล ที่ไม่มีอินเทอร์เน็ต
  • ดีบักเกอร์ Windows PowerShell ได้รับการปรับปรุงเพื่อให้สามารถตรวจแก้จุดบกพร่องของเวิร์กโฟลว์ Windows PowerShell รวมถึงสคริปต์ที่ทำงานบนคอมพิวเตอร์ระยะไกลได้ เวิร์กโฟลว์ Windows PowerShell สามารถแก้ไขข้อบกพร่องที่ระดับสคริปต์ได้จากบรรทัดคำสั่ง Windows PowerShell หรือ Windows PowerShell ISE สคริปต์ Windows PowerShell รวมถึงเวิร์กโฟลว์ของสคริปต์ สามารถดีบักผ่านเซสชันระยะไกลได้แล้ว เซสชันการดีบักระยะไกลจะถูกรักษาไว้บนเซสชันระยะไกลของ Windows PowerShell ที่ถูกตัดการเชื่อมต่อแล้วเชื่อมต่อใหม่ในภายหลัง
  • A เรียกใช้ตอนนี้ พารามิเตอร์สำหรับ ลงทะเบียน-ScheduledJob และ กำหนดตารางเวลางาน ขจัดความจำเป็นในการตั้งวันที่และเวลาเริ่มงานทันทีโดยใช้ปุ่ม ทริกเกอร์ พารามิเตอร์.
  • เรียกใช้วิธีส่วนที่เหลือ และ เรียกใช้ WebRequest ตอนนี้ให้คุณตั้งค่าส่วนหัวทั้งหมดโดยใช้พารามิเตอร์ส่วนหัว แม้ว่าพารามิเตอร์นี้จะมีอยู่เสมอ แต่ก็เป็นหนึ่งในหลายพารามิเตอร์สำหรับ cmdlet ของเว็บที่ทำให้เกิดข้อยกเว้นหรือข้อผิดพลาด
  • รับโมดูล มีพารามิเตอร์ใหม่ ชื่อที่ผ่านการรับรองครบถ้วนของประเภท โมดูลข้อมูลจำเพาะ[]. Name พารามิเตอร์ของ Get-Module ให้คุณระบุโมดูลโดยใช้ชื่อโมดูล เวอร์ชัน และ GUID ก่อนหน้านี้ มันยังให้คุณระบุโมดูลโดยใช้เพียงชื่อเท่านั้น
  • การตั้งค่านโยบายการดำเนินการเริ่มต้นในการแสดงตัวอย่าง Windows Server 2012 R2 คือ RemoteSigned. ใน Windows 8.1 Preview จะไม่มีการเปลี่ยนแปลงในการตั้งค่าเริ่มต้น
  • เริ่มต้นใน Windows PowerShell 4.0 การเรียกเมธอดโดยใช้ชื่อเมธอดไดนามิกได้รับการสนับสนุน
  • งานเวิร์กโฟลว์แบบอะซิงโครนัสจะไม่ถูกลบอีกต่อไปเมื่อรอบระยะเวลาการหมดเวลาที่ระบุโดย PSElapsedTimeoutวินาที พารามิเตอร์ทั่วไปของเวิร์กโฟลว์ผ่านไปแล้ว
  • พารามิเตอร์ใหม่ ซ้ำไม่มีกำหนด, ถูกเพิ่มเข้าใน ใหม่ JobTrigger และ ชุด-JobTrigger cmdlet. ซึ่งช่วยลดความจำเป็นในการระบุ a TimeSpan.MaxValue ค่าสำหรับ ระยะเวลาการทำซ้ำ พารามิเตอร์เพื่อรันงานที่กำหนดเวลาไว้ซ้ำ ๆ เป็นระยะเวลาไม่แน่นอน
  • A พาสทรู เพิ่มพารามิเตอร์ลงใน .แล้ว เปิดใช้งาน-JobTrigger และ ปิดการใช้งาน-JobTrigger cmdlet. พารามิเตอร์ Passthru แสดงอ็อบเจ็กต์ที่สร้างหรือแก้ไขโดยคำสั่งของคุณ
  • ชื่อพารามิเตอร์สำหรับระบุเวิร์กกรุ๊ปใน Add-คอมพิวเตอร์ และ ลบ-คอมพิวเตอร์ ตอนนี้ cmdlets มีความสอดคล้องกัน ตอนนี้ cmdlet ทั้งสองใช้พารามิเตอร์ ชื่อเวิร์กกรุ๊ป.
  • พารามิเตอร์ทั่วไปใหม่ ไปป์ไลน์ตัวแปร, ได้รับการเพิ่ม PipelineVariable ให้คุณบันทึกผลลัพธ์ของคำสั่ง piped (หรือบางส่วนของคำสั่ง piped) เป็นตัวแปรที่สามารถส่งผ่านส่วนที่เหลือของไปป์ไลน์ได้
  • Windows PowerShell ให้คุณเพิ่มคำสำคัญใหม่ได้แล้ว
  • รองรับการกรองคอลเลกชันโดยใช้ไวยากรณ์เมธอดแล้ว
  • งานวิ่งการกุศล Get-กระบวนการ cmdlet มีพารามิเตอร์สวิตช์ใหม่ รวมชื่อผู้ใช้.
  • cmdlet ใหม่ Get-FileHashที่รับข้อมูลเกี่ยวกับไฟล์แฮช ถูกเพิ่มเข้าไปแล้ว
  • ใน Windows PowerShell 4.0 หากโมดูลใช้ DefaultCommandPrefix คีย์ในรายการหรือถ้าผู้ใช้นำเข้าโมดูลด้วย อุปสรรค พารามิเตอร์ คำสั่งที่ส่งออก คุณสมบัติของโมดูลแสดงคำสั่งในโมดูลพร้อมคำนำหน้า เมื่อคุณรันคำสั่งโดยใช้ไวยากรณ์ที่ผ่านการรับรองโมดูล ModuleNameCommandName ชื่อคำสั่งต้องมีคำนำหน้า
  • คุณค่าของ $PSVersionTable.PSVersion ได้รับการอัพเดตเป็น 4.0

คุณลักษณะใหม่ใน Windows PowerShell Integrated Scripting Environment (ISE)

  • Windows PowerShell ISE รองรับทั้งการดีบัก Windows PowerShell Workflow และการดีบักสคริปต์ระยะไกล
  • เพิ่มการสนับสนุน IntelliSense สำหรับผู้ให้บริการและการกำหนดค่า Windows PowerShell Desired State Configuration

ฟีเจอร์ใหม่ใน Windows PowerShell Workflow

  • เพิ่มการสนับสนุนสำหรับใหม่ ไปป์ไลน์ตัวแปร พารามิเตอร์ทั่วไปในบริบทของไปป์ไลน์แบบวนซ้ำ เช่น พารามิเตอร์ที่ใช้โดย System Center Orchestrator นั่นคือไพพ์ไลน์ที่รันคำสั่งจากซ้ายไปขวา ซึ่งต่างจากการรันแบบสลับกันโดยใช้การสตรีม
  • การโยงพารามิเตอร์ได้รับการปรับปรุงอย่างมากเพื่อทำงานนอกสถานการณ์สมมติการเติมแท็บให้สมบูรณ์ เช่น กับคำสั่งที่ไม่มีอยู่ในรันสเปซปัจจุบัน
  • เพิ่มการสนับสนุนสำหรับกิจกรรมคอนเทนเนอร์แบบกำหนดเองในเวิร์กโฟลว์ Windows PowerShell หากพารามิเตอร์กิจกรรมเป็นประเภท กิจกรรม, กิจกรรม[]—หรือเป็นคอลเลกชั่นทั่วไปของกิจกรรม—และผู้ใช้ได้ระบุบล็อกสคริปต์เป็นอาร์กิวเมนต์ จากนั้น Windows PowerShell Workflow จะแปลงบล็อกสคริปต์เป็น XAML เช่นเดียวกับการรวบรวมสคริปต์เป็นเวิร์กโฟลว์ Windows PowerShell ปกติ
  • หลังจากเกิดความผิดพลาด เวิร์กโฟลว์ Windows PowerShell จะเชื่อมต่อใหม่โดยอัตโนมัติไปยังโหนดที่มีการจัดการ
  • ตอนนี้คุณสามารถเค้น Foreach - Parallel งบกิจกรรมโดยใช้ เค้นจำกัด คุณสมบัติ
  • งานวิ่งการกุศล การดำเนินการผิดพลาด พารามิเตอร์ทั่วไปมีค่าที่ถูกต้องใหม่ เลื่อนซึ่งมีไว้สำหรับเวิร์กโฟลว์เท่านั้น
  • ปลายทางเวิร์กโฟลว์จะปิดโดยอัตโนมัติหากไม่มีเซสชันที่ใช้งานอยู่ ไม่มีงานที่อยู่ระหว่างดำเนินการ และไม่มีงานที่ค้างอยู่ คุณลักษณะนี้ช่วยประหยัดทรัพยากรบนคอมพิวเตอร์ที่ทำหน้าที่เป็นเซิร์ฟเวอร์เวิร์กโฟลว์ เมื่อตรงตามเงื่อนไขการปิดอัตโนมัติ

คุณลักษณะใหม่ใน Windows PowerShell Web Services

  • เมื่อมีข้อผิดพลาดเกิดขึ้นใน Windows PowerShell Web Services (PSWS หรือที่เรียกว่า Management OData IIS Extension) ในขณะที่ cmdlet กำลังทำงาน ข้อความแสดงข้อผิดพลาดที่มีรายละเอียดมากขึ้นจะถูกส่งคืนไปยังผู้โทร นอกจากนี้ รหัสข้อผิดพลาดจะตามมา แนวทางรหัสข้อผิดพลาดของ Windows Azure REST API.
  • ปลายทางสามารถกำหนดเวอร์ชัน API ได้แล้วในขณะนี้ รวมทั้งบังคับใช้การใช้งานเวอร์ชัน API เฉพาะ เมื่อใดก็ตามที่เวอร์ชันที่ไม่ตรงกันเกิดขึ้นระหว่างไคลเอ็นต์และเซิร์ฟเวอร์ ข้อผิดพลาดจะแสดงต่อทั้งไคลเอ็นต์และเซิร์ฟเวอร์
  • การจัดการสคีมาการจัดส่งทำได้ง่ายขึ้นโดยการสร้างค่าโดยอัตโนมัติสำหรับฟิลด์ที่ขาดหายไปในสคีมา การสร้างเกิดขึ้นเป็นจุดเริ่มต้นที่เป็นประโยชน์ แม้ว่าสคีมาการจัดส่งจะไม่มีอยู่ก็ตาม
  • การจัดการประเภทใน PSWS ได้รับการปรับปรุงเพื่อรองรับประเภทที่ใช้ตัวสร้างที่แตกต่างจากตัวสร้างเริ่มต้น โดยมีลักษณะการทำงานคล้ายกับ PSTypeConverter ใน Windows PowerShell วิธีนี้ช่วยให้คุณใช้ประเภทที่ซับซ้อนกับ PSWS
  • ตอนนี้ PSWS อนุญาตให้ขยายอินสแตนซ์ที่เกี่ยวข้องขณะเรียกใช้แบบสอบถาม สำหรับเนื้อหาไบนารีที่มีขนาดใหญ่กว่า (เช่น รูปภาพ เสียง หรือวิดีโอ) ค่าใช้จ่ายในการถ่ายโอนมีความสำคัญ และควรถ่ายโอนข้อมูลไบนารีโดยไม่เข้ารหัสจะดีกว่า PSWS ใช้สตรีมทรัพยากรที่มีชื่อสำหรับการถ่ายโอนโดยไม่ต้องเข้ารหัส สตรีมทรัพยากรที่มีชื่อเป็นคุณสมบัติของเอนทิตีของ Edm.สตรีม พิมพ์. สตรีมทรัพยากรที่มีชื่อแต่ละรายการมี URI แยกต่างหากสำหรับการดำเนินการ GET หรือ UPDATE
  • การดำเนินการ OData ในขณะนี้มีกลไกสำหรับการเรียกใช้เมธอดที่ไม่ใช่ CRUD (สร้าง อ่าน อัปเดต และลบ) บนทรัพยากร คุณสามารถเรียกใช้การดำเนินการได้โดยส่งคำขอ HTTP POST ไปยัง URI ที่กำหนดไว้สำหรับการดำเนินการ พารามิเตอร์สำหรับการดำเนินการถูกกำหนดไว้ในเนื้อหาของคำขอ POST
  • เพื่อให้สอดคล้องกับแนวทางของ Windows Azure URL ทั้งหมดควรถูกทำให้ง่ายขึ้น การเปลี่ยนแปลงรวมอยู่ใน คีย์เป็นส่วน อนุญาตให้แสดงคีย์เดียวเป็นกลุ่ม โปรดทราบว่าการอ้างอิงที่ใช้ค่าคีย์หลายค่าต้องใช้ค่าที่คั่นด้วยเครื่องหมายจุลภาคในรูปแบบวงเล็บเหมือนเมื่อก่อน
  • ก่อน PSWS รุ่นนี้ วิธีเดียวที่จะสร้าง อัปเดต หรือลบคือเรียกใช้ Post, Put หรือ Delete บนทรัพยากรระดับบนสุด การดำเนินการใหม่ใน PSWS รุ่นนี้ช่วยให้ผู้ใช้ได้รับผลลัพธ์แบบเดียวกันในขณะที่เข้าถึงทรัพยากรเดียวกันน้อยลงโดยตรง โดยเข้าใกล้ราวกับว่ามีทรัพยากรเหล่านี้อยู่

คุณลักษณะใหม่ใน Windows PowerShell Web Access

  • คุณสามารถยกเลิกการเชื่อมต่อกับเซสชันที่มีอยู่แล้วในคอนโซล Windows PowerShell Web Access บนเว็บ อา ลด ปุ่มในคอนโซลบนเว็บช่วยให้คุณยกเลิกการเชื่อมต่อจากเซสชันโดยไม่ต้องลบออก และเชื่อมต่อกับเซสชันอีกครั้ง
  • พารามิเตอร์เริ่มต้นสามารถแสดงได้ในหน้าลงชื่อเข้าใช้ หากต้องการแสดงพารามิเตอร์เริ่มต้น ให้กำหนดค่าสำหรับการตั้งค่าทั้งหมดที่แสดงใน การตั้งค่าการเชื่อมต่อเสริม พื้นที่ของหน้าลงชื่อเข้าใช้ในไฟล์ชื่อ web.config. คุณสามารถใช้ไฟล์ web.config ไฟล์เพื่อกำหนดการตั้งค่าการเชื่อมต่อที่เลือกได้ทั้งหมด ยกเว้นชุดข้อมูลประจำตัวชุดที่สองหรือชุดสำรอง
  • ใน Windows Server 2012 R2 Preview คุณสามารถจัดการกฎการอนุญาตสำหรับ Windows PowerShell Web Access จากระยะไกลได้ ดิ เพิ่ม PswaAuthorizationRule และ ทดสอบ-PswaAuthorizationRule ตอนนี้ cmdlets รวมพารามิเตอร์ Credential ที่ช่วยให้ผู้ดูแลระบบสามารถจัดการกฎการอนุญาตจากคอมพิวเตอร์ระยะไกล หรือในเซสชัน Windows PowerShell Web Access
  • ขณะนี้ คุณสามารถมีเซสชัน Windows PowerShell Web Access ได้หลายเซสชันในเซสชันเบราว์เซอร์เดียว โดยใช้แท็บเบราว์เซอร์ใหม่สำหรับแต่ละเซสชัน คุณไม่จำเป็นต้องเปิดเซสชันเบราว์เซอร์ใหม่เพื่อเชื่อมต่อกับเซสชันใหม่ในคอนโซล Windows PowerShell บนเว็บอีกต่อไป

การแก้ไขจุดบกพร่องที่โดดเด่นใน Windows PowerShell 4.0

  • รับเคาน์เตอร์ ตอนนี้สามารถส่งคืนตัวนับที่มีอักขระอะพอสทรอฟีใน Windows รุ่นภาษาฝรั่งเศสได้แล้ว
  • ตอนนี้คุณสามารถดู รับประเภท วิธีการบนวัตถุดีซีเรียลไลซ์
  • #กำหนดให้มี คำสั่งตอนนี้ให้ผู้ใช้ต้องการสิทธิ์การเข้าถึงของผู้ดูแลระบบ หากจำเป็น
  • งานวิ่งการกุศล นำเข้า-Csv cmdlet ตอนนี้ละเว้นบรรทัดว่าง
  • ปัญหาที่ Windows PowerShell ISE ใช้หน่วยความจำมากเกินไปเมื่อคุณใช้งานและ เรียกใช้ WebRequest คำสั่งได้รับการแก้ไข
  • รับโมดูล ตอนนี้แสดงเวอร์ชันโมดูลใน a เวอร์ชั่น คอลัมน์.
  • Remove-Item –Recurse ตอนนี้ลบรายการออกจากโฟลเดอร์ย่อยตามที่คาดไว้
  • A ชื่อผู้ใช้ ได้เพิ่มคุณสมบัติลงใน Get-กระบวนการ วัตถุที่ส่งออก
  • งานวิ่งการกุศล เรียกใช้วิธีส่วนที่เหลือ cmdlet ตอนนี้ส่งคืนผลลัพธ์ที่มีอยู่ทั้งหมด
  • เพิ่มสมาชิก ตอนนี้มีผลกับ hashtables แม้ว่า hashtables จะยังไม่ได้รับการเข้าถึงก็ตาม
  • เลือกวัตถุ – ขยาย ไม่ล้มเหลวหรือสร้างข้อยกเว้นอีกต่อไปหากค่าของคุณสมบัติเป็นโมฆะหรือว่างเปล่า
  • Get-กระบวนการ ตอนนี้สามารถใช้ในไปป์ไลน์กับคำสั่งอื่นที่ได้รับ ชื่อคอมพิวเตอร์ ทรัพย์สินจากวัตถุ
  • แปลงเป็น Json และ แปลงจาก-Json ขณะนี้สามารถยอมรับเงื่อนไขภายในเครื่องหมายคำพูดคู่ และขณะนี้ข้อความแสดงข้อผิดพลาดของข้อความแสดงข้อผิดพลาดสามารถแปลเป็นภาษาท้องถิ่นได้
  • รับงาน ตอนนี้ส่งคืนงานตามกำหนดเวลาที่เสร็จสิ้นแล้ว แม้แต่ในเซสชันใหม่
  • ปัญหาเกี่ยวกับการติดตั้งและการเลิกเมาต์ VHD โดยใช้ปุ่ม FileSystem ผู้ให้บริการใน Windows PowerShell 4.0 ได้รับการแก้ไขแล้ว Windows PowerShell สามารถตรวจพบไดรฟ์ใหม่เมื่อติดตั้งในเซสชันเดียวกัน
  • คุณไม่จำเป็นต้องโหลดอย่างชัดเจนอีกต่อไป งานที่กำหนดเวลาไว้ or Workflow โมดูลที่จะทำงานกับประเภทงานของพวกเขา
  • มีการปรับปรุงประสิทธิภาพในกระบวนการนำเข้าเวิร์กโฟลว์ที่กำหนดเวิร์กโฟลว์ที่ซ้อนกัน กระบวนการนี้เร็วขึ้น

ที่มา: TechNet

ฟอรั่มผู้ใช้

ข้อความ 0