เครื่องมือบรรทัดคำสั่งของ 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รายการกระบวนการที่ใช้งานทั้งหมด) หากย้ายจากเชลล์อื่นไปยัง PSSet-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 ความคิดเห็น