PowerShell เป็นทางเลือกของ Microsoft แทนพรอมต์คำสั่ง . ก่อนหน้านี้ Microsoft ประกาศว่าพวกเขาจะเป็นโอเพ่นซอร์ส PowerShell และจะนำมันไปสู่เวอร์ชันล่าสุดของรสชาติ Linux ที่แตกต่างกันเช่น Ubuntu, CentOS, Red Hat Enterprise Linux, OpenSUSE, Fedora และ macOS พวกเขายังเปิดตัว PowerShell Core ซึ่งมีคุณสมบัติมากกว่า Powershell รุ่นก่อนหน้าที่จัดส่งพร้อมกับ Windows สร้างขึ้นสำหรับ ผู้ดูแลระบบ และตั้งใจที่จะเป็นอีกทางเลือกหนึ่งของพรอมต์คำสั่ง ด้วยการขยาย PowerShell ข้ามแพลตฟอร์มนี้ ผู้ใช้จะได้รับประโยชน์จากการทำงานบนระบบปฏิบัติการและสภาพแวดล้อมที่แตกต่างกัน
ตลอดหลายปีที่ผ่านมา PowerShell ได้ทำงานและอัปเกรดเพื่อรองรับ cmdlets . เพิ่มเติม หรือ คำสั่ง PowerShell เพียงเพื่อให้มีความยืดหยุ่นเพียงพอในการจัดการงานต่างๆ สำหรับองค์กรที่ใช้ซอฟต์แวร์และบริการเฉพาะ Windows นั้น Microsoft ได้สร้างบริการต่างๆ เช่น Windows Server, Azure Active Directory และ Exchange เพื่อให้จัดการได้โดยใช้ PowerShell ส่งผลให้ใช้บริการได้ดีขึ้น แทนที่จะใช้ตัวจัดการการกำหนดค่าตาม GUI และช่วยประหยัดต้นทุนด้านลอจิสติกส์ได้มากในระยะยาว
คำสั่ง CMD เทียบเท่าที่สามารถดำเนินการได้บน PowerShell
วันนี้เราจะมาพูดถึงคำสั่งพื้นฐานบางคำสั่งสำหรับ CMD ที่สามารถดำเนินการได้โดยใช้บรรทัดคำสั่ง PowerShell ด้วย
1] หากคุณต้องการนำทางไปยังตำแหน่งใด ๆ ในบรรทัดคำสั่งมันง่ายมาก ที่คุณใช้ cd ใน Command Prompt คุณสามารถใช้
Set-Location "<PATH>"
สำหรับสิ่งเดียวกันภายใน PowerShell
2] การแสดงรายการเนื้อหาทั้งหมดของโฟลเดอร์ไม่ใช่เรื่องใหญ่หากจะช่วยคุณในการนำทางผ่านแผนผังไดเร็กทอรี สำหรับพรอมต์คำสั่ง เราใช้ dir แต่เมื่อคุณใช้ PowerShell คุณสามารถใช้
Get-ChildItem
เพื่อแสดงรายการไฟล์และไดเร็กทอรีทั้งหมดภายในไดเร็กทอรี
3] การเปลี่ยนชื่อเป็นสิ่งที่เราเห็นสมควรในระบบปฏิบัติการที่เน้น GUI 100% ของเรา แต่เมื่อต้องเปลี่ยนชื่อไฟล์หรือโฟลเดอร์บนระบบระยะไกล ก็ต้องอาศัยเปลี่ยนชื่อ คำสั่งขณะใช้ Command Prompt แต่ใน PowerShell สามารถใช้
Rename-Item "Path/of/the/file.txt" - NewName "NewNameOfTheFile.csv"
ผู้ใช้สามารถเปลี่ยนชื่อและนามสกุลของไฟล์ที่ต้องการได้
4] หากคุณรู้คำสั่งและไม่แน่ใจว่าคำสั่งนั้นเกี่ยวกับอะไร /? คำสั่งบนบรรทัดคำสั่ง Command Prompt เคยช่วยได้มาก โชคดีที่ PowerShell ไม่ได้ขาดคุณสมบัตินี้ คุณสามารถใช้
Get-Help "CMDLET NAME"
เพื่อตรวจสอบการทำงานของ CMDLET บน PowerShell
5] แม้จะหยุดกระบวนการทำงานอยู่ คุณไม่จำเป็นต้องพึ่งพาตัวจัดการงานบางประเภทเมื่อคุณมี PowerShell taskkill เป็นคำสั่งที่เชื่อถือได้บน Command Prompt แต่ด้วย PowerShell คุณสามารถใช้
Stop-Process -Name "ApplicationName.exe"
6] คำสั่งที่เราจะพูดถึงนี้เป็นสิ่งที่ฉันเห็นเป็นการส่วนตัวว่าถูกใช้ในโรงเรียนบ่อยมาก เป็นคำสั่งที่มีประโยชน์มาก สามารถใช้เพื่อปิดเครื่องคอมพิวเตอร์ระยะไกลหรือเซสชันเซิร์ฟเวอร์ ในพรอมต์คำสั่ง shutdown -s สามารถใช้ได้แต่สำหรับ PowerShell
Stop-Computer -ComputerName "HostName1","HostName2","Gateway or Address"
สามารถใช้เพื่อปิดเครื่องคอมพิวเตอร์ระยะไกลได้
7] คล้ายกับการปิดคอมพิวเตอร์ คำสั่ง Command Prompt shutdown -r,
Restart-Computer -ComputerName "HostNameNew", Gateway or Address"
สามารถใช้กับ PowerShell เพื่อทำสิ่งเดียวกันได้
8] หากมีการเปลี่ยนแปลงใหม่บางอย่างในนโยบายกลุ่มของระบบและเพื่อดูการเปลี่ยนแปลง คุณต้องบังคับให้รีเฟรชนโยบายกลุ่ม ซึ่งใช้ gpupdate /force บนพรอมต์คำสั่ง แต่ใน PowerShell เราสามารถใช้
Invoke-GPUpdate -Computer "Name of the Host" -Force
ใช้ได้อย่างไม่มีที่ติ
9] ในการตั้งค่า Variables ในบรรทัดคำสั่ง Command Prompt เราสามารถใช้
SET VariableName = "Value of the Variable"
แต่ใน PowerShell $ ดูแลทุกอย่าง คุณสามารถใช้คำสั่งนี้เพื่อทำสิ่งที่จำเป็นได้
$VariableName="Value of the Variable".
10] หากคุณต้องการเข้าร่วมคอมพิวเตอร์กับโดเมน มันก็ค่อนข้างตรงไปตรงมาเช่นกัน ใน Command Prompt สามารถใช้คำสั่งนี้:
netdom /domain:domainName /user:userName /password:passwordForTheDomain member hostname /add
แต่เมื่อคุณใช้ PowerShell คุณสามารถใช้ประโยชน์จาก
Add-Computer -DomainName "Domain" -Credential "Domain\Username" -Restart
หากเราสังเกตอย่างรอบคอบ คำสั่ง Command Prompt พื้นฐานจะซับซ้อนเล็กน้อยเมื่อดำเนินการในลักษณะเดียวกันกับ PowerShell แต่เมื่อเราพูดถึงคำสั่งที่ซับซ้อน เช่น คำสั่งการเข้าร่วมโดเมนที่เราใช้ในพรอมต์คำสั่งและ PowerShell และเมื่อเราสังเกต คำสั่งที่ใช้ในพรอมต์คำสั่งนั้นซับซ้อนกว่าคำสั่งของ PowerShell มาก
ดังนั้นเราจึงสามารถพูดได้ว่าการนำ PowerShell ไปใช้บน Command Prompt จะดีกว่า นอกจากนี้ยังประกอบด้วยข้อเท็จจริงที่ว่ามันสามารถใช้ได้บนแพลตฟอร์มและสภาพแวดล้อมอื่นๆ ด้วย
เราเชื่อว่า Microsoft จะพยายามอย่างเต็มที่เพื่อทำให้ PowerShell ดีกว่า Command Prompt และไม่บังคับผู้ใช้โดยการแทนที่ Command Prompt ด้วย