Cmd.exe กับ PowerShell บน Windows: การอ้างอิงที่มีประโยชน์

Command Line หรือ Powershell บน Windows? ต่อไปนี้เป็นการดูทั้งข้อดีข้อเสียของแต่ละคำสั่งและคำสั่งที่สำคัญที่คุณสามารถใช้ได้

คลิก, คลิก, คลิก…เสมอกับคลิก! ถ้าคุณต้องการวิธีที่รวดเร็วกว่าในการทำสิ่งต่างๆมากมายใน Windows คุณต้องการเรียนรู้เกี่ยวกับ Command Line Interfaces (CLI) CMD.exe และ PowerShell แต่คุณควรใช้อันไหนดี มาดูทั้งจุดแข็งและจุดอ่อนของพวกเขาและคำสั่งสำคัญ ๆ ที่คุณสามารถใช้ซ้ำแล้วซ้ำอีก

CMD ยังเป็นที่รู้จักในนาม Command Shell ในความเป็นจริงคนส่วนใหญ่มักจะอ้างถึงว่าเป็นเพียง 'คำสั่ง' เป็นเครื่องมือใน Windows ที่ให้ผู้ใช้สามารถทำงานได้โดยพิมพ์ตัวอักษรและคำต่างๆ สำหรับผู้อ่านที่มีประสบการณ์มากขึ้นคุณอาจเรียกคืนสิ่งนี้เป็นคำสั่ง MS-DOS MS-DOS มาจาก MicroSบ่อยๆ DISK Operating Sตั้งค่า คำสั่งเหล่านั้นจะอยู่ในไฟล์ที่เรียกว่า command.comซ่อนตัวอยู่ในส่วนลึกของ Windows คุณจะพบว่าคำสั่งบางคำสั่งในเชลล์คำสั่งเรียกใช้โปรแกรมขนาดเล็ก เปิด Windows Explorer แล้วไปที่ C: WindowsSystem32. ดูแอปพลิเคชั่นทั้งหมดในนั้น ส่วนใหญ่มีชื่อเหมือนกันกับคำสั่งต่าง ๆ มากมาย คุณจะเห็น tracert.exe, taskkill.exe, whoami.exe และอีกมากมาย

หากคุณรู้คำสั่งต่าง ๆ และวิธีการใช้งานพวกมันมักจะเป็นวิธีที่เร็วกว่ามากที่จะทำสิ่งต่าง ๆ ให้เสร็จ แต่ระวังด้วย! นอกจากนี้ยังเป็นเครื่องมืออันทรงพลังที่อาจทำให้เกิดปัญหาร้ายแรงใน Windows หากคุณทำผิดพลาดหรือไม่รู้ว่ากำลังทำอะไรอยู่

PowerShell เป็นโปรแกรมอรรถประโยชน์บรรทัดคำสั่ง แต่ยังเป็นภาษาสคริปต์ทั้งหมดสร้างขึ้นบนแพลตฟอร์ม. NET ของ Microsoft มันมีพลังและความสามารถทั้งหมดของ CMD และอีกมากมาย PowerShell ให้คุณโต้ตอบกับทุกด้านของ Windows และยังสามารถโต้ตอบกับโปรแกรมและเซิร์ฟเวอร์ Microsoft ได้หลากหลาย คุณสามารถทำงานกับสิ่งต่าง ๆ เช่น Microsoft Office, Exchange Server และ Microsoft SQL Server นอกเหนือจากนั้นคุณสามารถโต้ตอบกับฐานข้อมูลที่ไม่ใช่ของ Microsoft เช่น MySQL, IBM's DB2 และอื่น ๆ คุณสามารถสร้างโปรแกรมของคุณเองด้วย GUI เป็นเครื่องมือที่ทรงพลังอย่างยิ่งที่ตอนนี้เป็นโอเพ่นซอร์สและสามารถใช้กับคอมพิวเตอร์ที่ใช้ Mac และ Linux

สิ่งนี้ทำได้โดยใช้ cmdlets, เด่นชัดเป็น“commandlettes” ในฐานะที่เป็นส่วนหนึ่งของ "lettes" ของคำที่แนะนำ cmdlets เป็นคำสั่งเล็กน้อย ใน CMD คำสั่งคือโปรแกรมที่มีในตัวเองตามที่เราแสดงให้คุณเห็นว่าเป็นแอปพลิเคชันที่ปฏิบัติการได้ใน Windows Cmdlets เป็นเหมือนการสร้างบล็อก แต่ละคนทำสิ่งที่เฉพาะเจาะจง แต่พวกเขาสามารถรวมกันเพื่อสร้างคำสั่งเต็มรูปแบบหรือสคริปต์

ดังนั้นความแตกต่างระหว่าง CMD และ PowerShell คืออะไร

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

เมื่อคุณเริ่มเปรียบเทียบคำสั่งและcmdlet คุณจะสังเกตเห็นว่าการทำความเข้าใจกับสิ่งที่ PowerShell cmdlet ทำได้ง่ายขึ้น คำสั่งบางคำเป็นความลับเว้นแต่คุณจะเรียนรู้และใช้มันซ้ำ ๆ วัตถุประสงค์ของคำสั่งเช่น CHKDSK, rmdirและ TRACERT ไม่ชัดเจนสำหรับคนทั่วไป แต่ cmdlets เป็นไปตามหลักการตั้งชื่อของ กริยานาม. ส่วนแรกจะบอกคุณว่าการกระทำที่ cmdlet กำลังจะทำคืออะไรและส่วนที่สองจะบอกคุณว่ามันจะต้องทำอะไร ตัวอย่างเช่นทุกคนสามารถบอกได้ว่า cmdlet ขอความช่วยเหลือ กำลังจะไปขอความช่วยเหลือจากคุณอย่างใด

ทำไมฉันถึงต้องใช้ CMD แทน PowerShell

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

ฉันจะเข้าถึง CMD และ Powershell ได้อย่างไร

วิธีที่ง่ายที่สุดคือการคลิกในแถบค้นหาบนเมนูเริ่มของคุณแล้วเริ่มพิมพ์ cmd สำหรับเชลล์คำสั่งหรือ PowerShell สำหรับ PowerShell นี่คือสิ่งที่ดูเหมือน cmd.

สำหรับเชลล์คำสั่งคุณจะเห็นรายการเป็นแอพ Command Prompt ใน Windows 10 Windows เวอร์ชั่นก่อนหน้าจะแสดงรายการเป็น cmd.exe การเปิดมันจะทำให้คุณมีหน้าต่างสีดำพร้อมตัวอักษรสีขาวอยู่ในนั้นเช่นในภาพด้านล่าง ดูบรรทัด C: UsersBrian> หัวลูกศรเรียกว่าพรอมต์คำสั่ง คุณมักจะได้รับคำแนะนำในการใช้ CMD ที่พูดว่า "พิมพ์สิ่งนี้ที่พรอมต์คำสั่ง ... " นั่นคือจุดที่มันหมายถึง

คุณอาจสังเกตเห็นสองทางเลือกสำหรับ PowerShell หนึ่งคือแอพ Windows PowerShell และอีกอันคือ Windows PowerShell Integrated Scripting Environment (ISE)

หากคุณกำลังเรียกใช้คำสั่งเดียวหรือสามคำสั่งดังนั้นแอป PowerShell ก็ดีพอ เพียงทำให้คุณทึ่งคุณสามารถใช้คำสั่ง CMD ใน PowerShell แต่คุณไม่สามารถใช้ PowerShell ใน CMD ได้ แอป PowerShell มีลักษณะเช่นนี้เมื่อเปิด:

PowerShell ที่พรอมต์

คำสั่งทั่วไปส่วนใหญ่ใน CMD.exe

ใช้คำสั่งเหล่านี้ที่พร้อมรับคำสั่งกด Enter เพื่อใช้พวกเขา

ช่วยด้วย- จะแสดงรายการคำสั่งทั่วไป
ซีดี - แสดงชื่อหรือเปลี่ยนไดเรกทอรีปัจจุบัน
chdir - แสดงชื่อหรือเปลี่ยนไดเรกทอรีปัจจุบัน
CHKDSK - ตรวจสอบดิสก์และแสดงรายงานสถานะ
CLS - ล้างหน้าจอ มีประโยชน์หลังจากรันคำสั่งจำนวนมาก
คัดลอก - คัดลอกหนึ่งไฟล์ขึ้นไปไปยังตำแหน่งอื่น
DEL - ลบไฟล์อย่างน้อยหนึ่งไฟล์
DIR - แสดงรายการไฟล์และไดเรกทอรีย่อยในไดเรกทอรี
DISKPART - แสดงหรือกำหนดค่าคุณสมบัติ Disk Partition
EXIT - ออกจากโปรแกรม CMD.EXE (ตัวแปลคำสั่ง) MKDIR สร้างไดเรกทอรี
มากกว่า - แสดงผลลัพธ์ทีละหน้าจอ มีประโยชน์เมื่อคำสั่งส่งคืนข้อมูลจำนวนมากและเป็นเพียงการเลื่อน
ย้าย - ย้ายหนึ่งไฟล์ขึ้นไปจากไดเรกทอรีหนึ่งไปยังอีกไดเรกทอรีหนึ่ง
RENAME - เปลี่ยนชื่อไฟล์หรือไฟล์
rmdir - ลบไดเรกทอรี
systeminfo - แสดงคุณสมบัติและการกำหนดค่าเฉพาะของเครื่อง
รายการงาน - แสดงงานที่กำลังทำงานทั้งหมดรวมถึงบริการต่างๆ
TASKKILL - ฆ่าหรือหยุดกระบวนการหรือแอปพลิเคชันที่ทำงานอยู่

Cmdlets ทั่วไปส่วนใหญ่ใน PowerShell

ขอความช่วยเหลือ - แสดงวิธีใช้สำหรับ cmdlet ที่คุณทำงานด้วย อดีต: รับความช่วยเหลือรับสมาชิก บอกวิธีใช้ cmdlet รับสมาชิก
ได้รับการบริการสมาชิก - แสดงสิ่งที่อยู่ภายในรายการเช่นไดเรกทอรีหรืออาร์เรย์
Get-กระบวนการ - แสดงกระบวนการทั้งหมดที่ทำงานบนคอมพิวเตอร์ของคุณทันที
รับบริการ - แสดงบริการทั้งหมดในคอมพิวเตอร์ของคุณและสถานะปัจจุบัน
รับรายการ - แสดงข้อมูลเกี่ยวกับสิ่งเฉพาะ อดีต: รับรายการ C: ผู้ใช้ จะแสดงสิ่งต่าง ๆ เกี่ยวกับไดเรกทอรีผู้ใช้เช่นสิทธิ์การใช้งานและเมื่อมีการแก้ไขครั้งล่าสุด
Get-ChildItem - แสดงให้คุณเห็นทุกสิ่งภายในของสิ่ง: อดีต: รับ ChildItem C: ผู้ใช้ จะแสดงไฟล์และโฟลเดอร์ทั้งหมดให้คุณทันทีภายในไดเรกทอรีผู้ใช้

นั่นอาจดูไม่มากนัก แต่ถ้าคุณเปลี่ยนคำกริยาใน cmdlet คุณก็จะได้ cmdlet ทั้งหมดมารวมกัน เปลี่ยนแปลง ได้รับ ไปยัง ใหม่ บน รับรายการ และคุณสามารถสร้างรายการใหม่ ตอนนี้เปลี่ยนเป็น ลบ และคุณสามารถลบรายการ เปลี่ยนแปลง Get-กระบวนการ ไปยัง หยุดกระบวนการ และคุณสามารถจบกระบวนการเฉพาะได้ จากนั้นเปลี่ยนเป็น เริ่มต้น และคุณสามารถเริ่มต้นกระบวนการ คุณได้รับความคิด

พารามิเตอร์ PowerShell โบนัส

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

ลองดูรายการไฟล์ในภาพด้านล่าง

รายการไฟล์ใน PowerShell

สมมติว่าเราต้องการลบไฟล์จำนวนมากด้วย cmdlet ลบรายการ CC_2017 *แต่เราไม่แน่ใจว่าจะเกิดอะไรขึ้น ใส่ตัว -WhatIf พารามิเตอร์ในตอนท้ายกด Enter แล้วเราจะพบ!

PowerShell - พารามิเตอร์อะไรในการใช้งานจริง

มันบอกเราว่าคำสั่งนี้จะถูกลบไฟล์ทั้งหมดเหล่านี้ หากไม่เป็นไรเราสามารถลบ -WhatIf จาก cmdlet และลบไฟล์เหล่านั้น หากไม่เป็นเช่นนั้นเราสามารถเปลี่ยน cmdlet และทดสอบอีกครั้ง

CMD หรือ PowerShell

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

0

บทความที่คล้ายกัน

ทิ้งข้อความไว้