แนะนำเครื่องมือบรรทัดคำสั่งของ Windows (Windows Command-line Tools)


เครื่องมือบรรทัดคำสั่งของ Windows


ในฐานะนักพัฒนาซอฟต์แวร์ที่ใช้เวลาส่วนใหญ่ในการเขียนโค้ดบน OSX และ Linux เราจึงอยากรู้ว่าการตั้งค่าบรรทัดคำสั่งสมัยใหม่ใน Windows จะเป็นอย่างไร

การสำรวจของนักพัฒนา StackOverflow เตือนให้เราทราบว่ามีนักพัฒนาที่ใช้ Windows มากกว่าระบบปฏิบัติการอื่น ๆ ดังนั้นเราจึงสงสัยว่าเครื่องมือที่นั่นตรงกับที่เราคุ้นเคยใน * nix land หรือไม่

หลังจากใช้เวลาในการประเมินภูมิทัศน์ของเครื่องมือ Windows CLI เราได้ตัดสินใจเกี่ยวกับชุดเครื่องมือที่เราคิดว่าทำให้เราได้ 95% ไปที่นั่น

ในตอนท้ายของวันเราได้พบกับ:

  • PowerShell
  • ConEmu
  • PSReadLine
  • PSGet
  • ช็อคโกแลต
  • Babun (ไม่จำเป็น)

ดูด้านล่างสำหรับหมายเหตุเพิ่มเติมเกี่ยวกับสิ่งที่เครื่องจักรต่างๆเหล่านี้ให้คุณ

PowerShell (เชลล์)

  • ใกล้เคียงกับ 'เชลล์' จริงมากกว่า cmd.exe อย่างมากทำให้เรามีสภาพแวดล้อมการเขียนสคริปต์ที่มีประสิทธิภาพสำหรับการทำงานอัตโนมัติ มันยุติธรรมที่จะเปรียบเทียบกับทุบตีหรือzsh
  • ไดเรกทอรีเติมข้อความอัตโนมัติและชื่อไฟล์
  • เติมข้อความอัตโนมัติชื่อแอปพลิเคชัน
  • มีนามแฝงแบบบูรณาการและคำสั่ง (เรียกว่า cmdlets - เช่นSelect-Stringเป็นเหมือนgrep, Invoke-Elevatedเป็นเหมือนsudo, Sort-Object เป็นเหมือนsort, Get-Processรายการกระบวนการที่ใช้งานทั้งหมด) หากย้ายจากเชลล์อื่นไปยัง PS Set-Aliasช่วยให้คุณสามารถแมปนามแฝงที่คุณคุ้นเคยกับ Windows ได้ ตัวอย่างเช่น: Set-Alias server python -m http.server 8000เปิดเซิร์ฟเวอร์ Python เมื่อใช้serverนามแฝง
  • นามแฝงสามารถคงอยู่ในโปรไฟล์ PowerShell
  • รองรับการวางท่อเช่น Unix แตกต่างจาก Unix คือไปป์ออบเจ็กต์แทนที่จะเป็นสตรีมข้อความ สิ่งนี้ต้องทำความคุ้นเคย แต่หลีกเลี่ยงการแยกวิเคราะห์เมื่อคุณต้องการออกจากสถานที่ให้บริการ
  • รองรับโมดูล PSGetเป็นตัวจัดการแพ็คเกจสำหรับ PowerShell ที่ช่วยให้คุณสามารถขยายได้อย่างง่ายดาย
  • เลือกที่จะพิจารณาPosh-Gitซึ่งเป็นสคริปต์ PowerShell สำหรับคอมไพล์เพื่อรับการเติมแท็บตามบริบท

หากคุณกำลังสนใจในเรื่องไม่สำคัญนี่คือคำตอบว่าทำไม MS สร้าง PowerShell จากตะกั่วสถาปนิก

PSReadLine (ตัวช่วยแก้ไขคอนโซล)

  • ปรับปรุงประสบการณ์การแก้ไขคอนโซลอย่างมาก
  • เน้นไวยากรณ์ทุกครั้งที่คุณเริ่มพิมพ์คำสั่ง ระบุข้อผิดพลาดทางไวยากรณ์อย่างชัดเจนด้วยอักขระ ">" สีแดง
  • การผูกคีย์ที่ปรับแต่งได้สูง
  • การเติมข้อความอัตโนมัติแบบทุบตี
  • การค้นหาประวัติแบบโต้ตอบ Bash / zsh (Ctrl + R) การส่งผ่านประวัติการสั่งการที่มีประสิทธิภาพด้วย ดูคำสั่งหลายบรรทัดก่อนหน้านี้ได้อย่างง่ายดายโดยใช้ปุ่มลูกศรแทนที่จะเป็นเพียงบรรทัดสุดท้ายของคำสั่ง
  • การสนับสนุนที่เหมาะสมสำหรับการคัดลอก / วาง / ตัด (Ctrl + C / X / V ควรจะทำงานได้ดี)
  • การสนับสนุนที่ดีสำหรับการเลิกทำ / ทำซ้ำ
  • การบันทึกประวัติเป็นไปโดยอัตโนมัติ

หรือคุณสามารถใช้Clinkซึ่งมีชุดคุณสมบัติที่คล้ายกัน แต่ไม่ได้เขียนอย่างเคร่งครัดสำหรับ PowerShell

ConEmu (โฮสต์คอนโซล)

  • โปรแกรมจำลองคอนโซลขั้นสูงที่คุณสามารถเรียกใช้เชลล์ที่คุณเลือกได้
  • รองรับการเปิดเทอร์มินัลหลายแท็บ ทำให้การเปิดใช้เทอร์มินัลเป็นผู้ใช้ที่แตกต่างกันเป็นเรื่องเล็กน้อย
  • ปรับแต่งได้มาก - ทุกอย่างตั้งแต่ทางลัดไปจนถึงการเลือกข้อความและสีของแถบสถานะสามารถเปลี่ยนแปลงได้
  • รองรับมุมมองแบบแยกหน้าจอ
  • แอพ Simple GUI สามารถเรียกใช้ในแท็บ
  • รองรับ Windows 7+ Jump Lists
  • รองรับการปรับขนาดหน้าต่างที่ราบรื่น
  • การลบรอยหยักแบบอักษรของ Windows
  • แท็บเริ่มต้นสามารถปรับแต่งได้อย่างสมบูรณ์เพื่อเริ่มต้นในไดเร็กทอรีเฉพาะ
  • คัดลอก / วางอัจฉริยะ

 

บางคนยังคงสนุกกับการใช้Console2และ Scott Hanselman มีบล็อกโพสต์ที่เขียนเกี่ยวกับเรื่องนี้

ซม

สิ่งที่ควรค่าแก่การส่งผ่านคือ Cmder ซึ่งเป็นแพ็คเกจการจำลองคอนโซลที่รวม ConEmu, Clink และ msysgit ซึ่งให้ความช่วยเหลือ Git แก่คุณ โดยทั่วไปแล้ว Cmder จะมอบประสบการณ์ที่สวยงามให้กับ ConEmu โดยค่าเริ่มต้นผ่านโทนสีของ Monokai

Cmder ยังรวมถึงผลประโยชน์เล็ก ๆ น้อย ๆ บางอย่างอื่น ๆ เช่นการทำงานร่วมกับแอพพลิเค GUI เช่นSublime ข้อความ

Chocolatey (ผู้จัดการแพ็คเกจ)

  • โดยทั่วไป homebrew สำหรับ Windows ช่วยให้คุณสามารถดึงแอพ Windows ที่คุณชื่นชอบได้อย่างสะดวก ขณะนี้มีแพ็คเกจ ~ 3K ที่สามารถอัปเดตได้โดยใช้ Chocolatey โดยตรง
  • แตกต่างจากNuget  NuGet ใช้สำหรับไลบรารีการพัฒนา Chocolatey เป็นผู้จัดการแพ็คเกจเครื่องไบนารีและสร้างขึ้นบนโครงสร้างพื้นฐานของ NuGet
  • เสนองานสร้างที่เงียบอย่างมีประสิทธิภาพ

คุณอาจสนใจที่จะเรียนรู้เกี่ยวกับOneGetซึ่งเป็นผู้จัดการแพ็คเกจ .. ผู้จัดการของ Microsoft ซึ่งควรทำงานร่วมกับ Chocolatey ภายใต้ Windows 10

Babun (Cygwin กำหนดค่าไว้ล่วงหน้า)

  • Cygwin (env เหมือน Linux สำหรับ Windows) ลบบางส่วนของนิสัยใจคอที่รู้จักกันในอดีต การตั้งค่าโดยรวมตรงไปตรงมามากขึ้นอย่างเห็นได้ชัดโดยใช้โปรแกรมติดตั้ง Babun หากคุณมีประสบการณ์โดยเฉพาะกับ Unix และต้องการหลีกเลี่ยงการเรียนรู้ PowerShell cygwin / Babun ก็คุ้มค่าที่จะพิจารณา
  • รวมถึงผู้จัดการแพคเกจที่เรียกว่าpact(เล็ก ๆ น้อย ๆ ที่คล้ายกับbrew) apt-getคล้ายกับ นี่เป็นเรื่องใหญ่เนื่องจากคุณต้องรันโปรแกรมติดตั้ง Cygwin อีกครั้งเมื่อเพิ่มแพ็คเกจเทียบกับแค่ใช้สนธิสัญญา
  • Vim ติดตั้งล่วงหน้าและกำหนดค่าไว้ล่วงหน้า
  • การสนับสนุนแบบบูรณาการสำหรับ oh-my-zsh
  • อัปเดตอัตโนมัติ

ที่มา: https://developers.google.com/web/shows/ttt/series-2/windows-commandline

แสดงความคิดเห็น

0 ความคิดเห็น