Computer >> คอมพิวเตอร์ >  >> การแก้ไขปัญหา >> การบำรุงรักษาคอมพิวเตอร์

เพิ่มประสิทธิภาพการทำงานของคุณด้วย Windows PowerShell Scripts

จะเกิดอะไรขึ้นถ้าคุณสามารถนำประสิทธิภาพการทำงานของ Linux มาสู่ Windows ได้? ข้อแตกต่างหลักประการหนึ่งระหว่าง Windows และ Linux คือ Linux distros ส่วนใหญ่มาพร้อมกับ Bash shell อันทรงพลัง เมื่อเปรียบเทียบแล้ว พรอมต์คำสั่งใน Windows จะเป็นแบบแบร์โบน จะเกิดอะไรขึ้นหาก Windows มีเทอร์มินัลที่ทรงพลังเท่ากัน

ด้วย PowerShell ความฝันนั้นก็จะกลายเป็นจริงได้

ข้อจำกัดความรับผิดชอบ:PowerShell ไม่ใช่ "Bash สำหรับ Windows" และไม่ควรเป็นเช่นนั้น ใช่ ทั้งสองเป็นสภาพแวดล้อมบรรทัดคำสั่งที่สามารถปรับปรุงประสิทธิภาพการทำงานของคุณได้อย่างมาก แต่นั่นคือจุดสิ้นสุดของความคล้ายคลึงกัน คุณควรมองว่า PowerShell เป็นแนวทางแยกต่างหากในการสร้างสภาพแวดล้อมบรรทัดคำสั่งที่มีประสิทธิภาพ

PowerShell คืออะไร

PowerShell ถือได้ว่าเป็นการอัพเกรดครั้งใหญ่ของพรอมต์คำสั่งของ Windows มันสามารถทำงานหลายอย่างเหมือนกัน (เช่น การนำทางระบบ โต้ตอบกับไฟล์ ปรับเปลี่ยนคุณสมบัติ) แต่เปิด .NET framework ทั้งหมดขึ้นมาเพื่อประสิทธิภาพสูงสุด โปรดอ่านต่อไปเพื่อให้เข้าใจถึงประโยชน์ของสิ่งนี้

มีประโยชน์หลักสองประการที่ทำให้ PowerShell ดีกว่าพรอมต์คำสั่งแบบเดิม:ความสามารถในการขยาย และ ความสามารถในการเขียนสคริปต์ .

เพิ่มประสิทธิภาพการทำงานของคุณด้วย Windows PowerShell Scripts

แม้ว่า PowerShell จะมาพร้อมกับชุดคำสั่งเริ่มต้น คุณสามารถเพิ่มคำสั่งของคุณเองได้โดยสร้าง cmdlets . Cmdlets คือคลาสที่สร้างขึ้นโดยใช้ภาษา C# และเมื่อมีการเรียก คลาสเหล่านั้นจะถูกดำเนินการภายในสภาพแวดล้อมของ PowerShell เนื่องจากเขียนโดยใช้ C# cmdlets จึงสามารถเข้าถึง .NET framework ทั้งหมดได้

.NET framework มีไลบรารีโค้ดขนาดใหญ่ที่ Microsoft จัดเตรียมไว้ให้ เมื่อเขียน cmdlet ของคุณเอง คุณจะสามารถเข้าถึงโค้ดนั้นทั้งหมดได้ กำลังดึงข้อมูลกระบวนการ? อัลกอริธึมการเข้ารหัส? การเชื่อมต่อฐานข้อมูล? เครือข่ายสื่อสาร? ทั้งหมดนั้นและอื่น ๆ จัดทำโดย .NET framework ซึ่งหมายความว่างานส่วนใหญ่ทำเพื่อคุณ คุณเพียงแค่ต้องประกอบเข้าด้วยกันโดยการเรียกใช้ฟังก์ชันที่เหมาะสม

Microsoft ได้ชี้แจงอย่างชัดเจนว่า PowerShell จะไม่หายไป อันที่จริง โปรแกรมจัดการแพ็คเกจที่กำลังจะมีขึ้นใน Windows 10 จะใช้ PowerShell ดังนั้นทุกคนควรพิจารณาเรียนรู้มันเร็วกว่านี้

เหตุใด PowerShell จึงยอดเยี่ยม

PowerShell มีคุณลักษณะขั้นสูงมากมาย ซึ่งส่วนใหญ่อาจเกี่ยวข้องกับโปรแกรมเมอร์ Windows และผู้ดูแลระบบเซิร์ฟเวอร์เท่านั้น แต่มีคุณลักษณะพื้นฐานหลายประการที่เข้าใจง่าย แต่มีประโยชน์อย่างยิ่งสำหรับทุกคน

เรียบง่ายแต่ทรงพลัง สภาพแวดล้อมของ PowerShell นั้นง่ายพอที่ทุกคนสามารถรับได้ภายในเวลาไม่กี่ชั่วโมงของการอ่าน มี คือ เส้นโค้งการเรียนรู้แต่ค่อนข้างตื้นและคุณไม่จำเป็นต้องเรียนรู้ทั้งหมด ของมันให้เกิดประโยชน์

ข้อมูลกระบวนการโดยละเอียด การใช้ตัวจัดการงานทางเลือกนั้นเป็นเรื่องหนึ่ง แต่ PowerShell ช่วยให้คุณใช้กลอุบายบางอย่างที่เกี่ยวข้องกับการจัดการกระบวนการได้ เริ่มต้นด้วย cmdlet ของ Get-Process และ Stop-Process

เพิ่มประสิทธิภาพการทำงานของคุณด้วย Windows PowerShell Scripts

การทำงานอัตโนมัติและการเขียนสคริปต์อย่างง่าย Windows พื้นฐานไม่มีวิธีง่ายๆ ในการทำงานอัตโนมัติ ก่อนหน้า PowerShell ไฟล์แบตช์สามารถทำได้เฉพาะการเขียนสคริปต์ดั้งเดิมในขณะที่จำเป็นต้องใช้โซลูชันของบริษัทอื่นสำหรับการทำงานอัตโนมัติ (เช่น Perl, AutoHotkey) แต่ด้วย PowerShell คุณสามารถกำหนดเวลางานให้ทำงานในช่วงเวลาหรือช่วงเวลาหนึ่งได้

ตัวอย่างเช่น ด้วยโมดูล ScheduledTasks คุณสามารถกำหนดให้โปรแกรมหรือกระบวนการทำงานตามทริกเกอร์ได้ (เช่น ในเวลาที่กำหนด เมื่อเหตุการณ์ของระบบเกิดขึ้น เป็นต้น) และคุณสามารถกำหนดบริบทสำหรับงานนั้นได้ (เช่น ความปลอดภัย ข้อจำกัด)

คำสั่งไพพ์และตรรกะ ใน Bash (Linux) คำสั่งต่างๆ สามารถไพพ์เข้าด้วยกันเพื่อให้เอาต์พุตของคำสั่งหนึ่งสามารถใช้เป็นอินพุตสำหรับคำสั่งอื่นได้ ตัวอย่างเช่น ข้อมูลเอาต์พุต cmdlet Get-Process พื้นฐานสำหรับกระบวนการที่ทำงานอยู่ทั้งหมด จะทำอย่างไรถ้าคุณต้องการข้อมูลจากชุดย่อยของกระบวนการเท่านั้น คุณสามารถไพพ์ด้วย Where-Object cmdlet ซึ่งทำหน้าที่เป็นตัวกรองกระบวนการ เพื่อดำเนินการ Get-Process เฉพาะกับกระบวนการที่ส่งคืนโดย Where-Object

PowerShell ยังมีคำสั่งดั้งเดิมสองสามคำสั่งสำหรับลอจิกแบบมีเงื่อนไข (เช่น If, Else, For, Switch) ที่สามารถใช้เพื่อควบคุมโฟลว์ของการดำเนินการ cmdlet ตัวอย่างเช่น คุณสามารถสร้างสคริปต์ PowerShell ที่รัน cmdlet บางอย่างเมื่อตรงตามเงื่อนไขบางอย่างเท่านั้น (เช่น ล้างกระบวนการเมื่อ RAM ใกล้จะเต็ม)

งานระยะไกลและพื้นหลัง ไม่เพียงแต่สามารถดำเนินการ cmdlet เป็นกระบวนการในเบื้องหลัง (เพื่อให้คุณสามารถเรียกใช้งานหลายงานพร้อมกันแบบอะซิงโครนัสได้) แต่ cmdlet จำนวนมากยังสามารถดำเนินการบนเครื่องระยะไกลบนเครือข่ายได้ตราบเท่าที่มีการกำหนดค่าให้ทำเช่นนั้น Cmdlet ที่มีความสามารถระยะไกลมักจะมีพารามิเตอร์ ComputerName ที่คุณสามารถระบุได้เมื่อดำเนินการ cmdlet ดังกล่าว

สำหรับข้อมูลเพิ่มเติม โปรดดูที่หน้า TechNet นี้เกี่ยวกับการเรียกใช้คำสั่งระยะไกลด้วย PowerShell

ดาวน์โหลดสคริปต์บุคคลที่สาม คุณไม่จำเป็นต้องขยาย PowerShell ด้วยตัวคุณเอง ที่เก็บออนไลน์หลายแห่งช่วยให้คุณดาวน์โหลดและใช้ประโยชน์จากสคริปต์สาธารณะและ cmdlet ที่ผู้อื่นสร้างขึ้นได้

เรียนรู้ PowerShell ได้ที่ไหน

พร้อมที่จะทำให้มือของคุณสกปรกด้วย PowerShell แล้วหรือยัง? ต่อไปนี้เป็นแหล่งข้อมูลบางส่วนที่มักแนะนำสำหรับมือใหม่ที่ต้องการเรียนรู้โดยเร็วที่สุด:

บทแนะนำ PowerShell โดย Don Jones ซีรีส์วิดีโอ YouTube นี้เน้นที่ PowerShell 2.0 (เวอร์ชันที่มาพร้อมกับ Windows 7) ซึ่งค่อนข้างล้าสมัยในขณะนี้ แต่มีการแนะนำที่ดีสำหรับผู้ที่ไม่มีประสบการณ์ในการเขียนสคริปต์เลย วิดีโอแต่ละรายการมีความยาวเพียงไม่กี่นาที แต่มี 99 รายการ ดังนั้นจึงค่อนข้างครอบคลุม

Microsoft Virtual Academy MVA เสนอหลักสูตรที่เกี่ยวข้องกับ Microsoft มากมายฟรี รวมถึงสองหลักสูตรใน PowerShell 3.0 มีหลักสูตรเริ่มต้นใช้งานและหลักสูตรเครื่องมือและการเขียนสคริปต์ขั้นสูง ทั้งสองหลักสูตรมี 9 บทเรียนซึ่งแต่ละหลักสูตรมีความยาวประมาณ 1 ชั่วโมง

เพิ่มประสิทธิภาพการทำงานของคุณด้วย Windows PowerShell Scripts

ศูนย์สคริปต์ TechNet ส่วน TechNet ของเว็บไซต์ Microsoft มีลิงก์ที่ยอดเยี่ยมมากมายไปยังคู่มือและบทแนะนำ PowerShell เป็นโบนัส หากคุณไปที่ส่วน Repository คุณสามารถเรียกดูและดาวน์โหลดสคริปต์ PowerShell ต่างๆ ได้

เฮ้ คนเขียนบท! บล็อก [นำ URL ที่เสียหายออก] นี่คือบล็อก "ทั้งหมดเกี่ยวกับ PowerShell" ที่มีข้อมูลดีๆ มากมายที่มีอายุย้อนหลังเกือบหนึ่งทศวรรษ มีการเผยแพร่โพสต์ใหม่ทุกวันและจัดหมวดหมู่ตามแท็กเพื่อให้เรียกดูได้ง่าย หากคุณไม่รู้ว่าจะเริ่มต้นจากตรงไหน ให้เริ่มต้นด้วยการเรียกดูแท็กเริ่มต้นใช้งาน [Broken URL Removed]

PowerShell เหมาะสำหรับคุณหรือไม่

คุณคิดอย่างไร? PowerShell จะช่วยเพิ่มประสิทธิภาพการทำงานของคุณบน Windows หรือไม่ หรือมันมากเกินไปสำหรับความต้องการของคุณหรือไม่ แบ่งปันความคิดของคุณกับเราในความคิดเห็น!