ฉันใช้ Linux และ Mac และฉันจะสอนบางสิ่งบรรทัดคำสั่งในไม่ช้า
ฉันจะติดตั้งอะไรบน Windows เพื่อให้หน้าต่างเทอร์มินัลคล้ายกับเชลล์ Mac / Linux Bash พื้นฐานมากที่สุด
ฉันต้องการกำหนด. bash_aliases ด้วยถ้าเป็นไปได้
ฉันใช้ Linux และ Mac และฉันจะสอนบางสิ่งบรรทัดคำสั่งในไม่ช้า
ฉันจะติดตั้งอะไรบน Windows เพื่อให้หน้าต่างเทอร์มินัลคล้ายกับเชลล์ Mac / Linux Bash พื้นฐานมากที่สุด
ฉันต้องการกำหนด. bash_aliases ด้วยถ้าเป็นไปได้
คำตอบ:
คุณสามารถติดตั้งCygwinหรือMSYS / MinGWหรือติดตั้งลีนุกซ์แบบเต็มในเครื่องเสมือน (ตัวอย่างเช่นใช้VirtualBox )
ตอนนี้คุณสามารถติดตั้งระบบย่อย Windows สำหรับลินุกซ์ที่ช่วยให้คุณทำงานในโหมดผู้ใช้ลินุกซ์เปลือกพื้นเมืองและเครื่องมือใน Windows สิ่งนี้ทำให้คุณสามารถรันBash shell ได้โดยตรงบน Windows และขึ้นอยู่กับ Ubuntu
สิ่งนี้ถูกนำมาใช้ใน Windows 10 พร้อมกับ Anniversary Update (2016) และไม่ได้เปิดใช้งานตามค่าเริ่มต้น ในการเปิดใช้งานฟีเจอร์ใหม่บนเครื่อง Windows 10 Anniversary Update ให้ทำดังต่อไปนี้:
ย้อนกลับไปในปี 2558 โครงการแอสโตเรียเริ่มนำแอพ Android มาสู่ Windows และพวกเขาสร้างระบบย่อยลินุกซ์ที่เรียกว่าระบบย่อย Windows สำหรับ Linux (WSL) เพื่อจุดประสงค์ ในที่สุดโครงการ Astoria ก็ถูกทิ้งเนื่องจากทำลายกลยุทธ์ UWP (แพลตฟอร์ม Windows สากล) แต่บางส่วนยังคงอยู่และสร้างพื้นฐานของการทุบตีสำหรับ Windows ตลอดระยะเวลาที่ผ่านมา Microsoft ได้ร่วมมือกับ Canonical (ผู้สร้าง Ubuntu Linux) เพื่อให้พวกเขามีรูปภาพดั้งเดิมพร้อมด้วยเครื่องมือ / ไบนารีที่รองรับทั้งหมด
ข้อมูลเพิ่มเติมสามารถดูได้ที่นี่
https://blogs.msdn.microsoft.com/commandline/2016/04/06/bash-on-ubuntu-on-windows-download-now-3/
https://blogs.windows.com / buildingapps / 2016/03/30 / run-bash-on-ubuntu-on-windows /
https://sec.ch9.ms/sessions/build/2016/P488.mp4 (วิดีโอ)
Enable-WindowsOptionalFeature -Online -FeatureName "Microsoft-Windows-Subsystem-Linux"
และติดตั้งสิ่งต่อไปนี้จากร้านค้า Windows: Ubuntu, Debian, OpenSUSE, Kali Linux
นี่คือรายการตัวเลือกที่มีอยู่ในปี 2018-05 พร้อมกับการอัปเดตบางอย่างเกี่ยวกับ WSL ระหว่างปี 2019-01 พร้อมรายละเอียดเล็กน้อยเกี่ยวกับแต่ละรายการ
Cygwin แสดงสิ่งต่อไปนี้:
Cygwin ตั้งเป้าหมายที่จะทำให้การย้ายแอพพลิเคชัน Linux บน Windows เป็นเรื่องง่าย ถ้าโปรแกรม C บางตัวได้รับการออกแบบสำหรับ Unix และคาดว่าจะใช้คุณสมบัติเช่นไพพ์, ไฟล์แบบ Unix และการเข้าถึงไดเร็กตอรี่เป็นต้นจากนั้นคุณสามารถคอมไพล์มันสำหรับ Cygwin และ Cygwin จะทำหน้าที่เป็นเลเยอร์ความเข้ากันได้ระหว่างรหัสและOS ต่างประเทศ (Windows) . สิ่งนี้ทำให้โปรแกรม C เดียวกันสามารถทำงานได้ทั้งบน Linux และ Windows โดยมีการดัดแปลงเพียงเล็กน้อยหรือไม่มีเลย รายชื่อโปรแกรมลีนุกซ์จำนวนมากได้รับการปฏิบัติและสามารถทำงานได้เมื่อคุณติดตั้ง Cygwin อย่างไรก็ตามคุณผู้ใช้โปรแกรมเหล่านี้อาจต้องคุ้นเคยกับ Unix ตัวอย่างเช่นคุณอาจต้องผ่านการโต้แย้งเช่น/cygdrive/c/autoexec.bat
แทนc:\autoexec.bat
และพร้อมที่จะจัดการกับผลลัพธ์ด้วยการเลิกจ้างบรรทัด Unix ( \n
) แทนการยกเลิกบรรทัด Windows ( \r\n
)
คอลเลกชันของโปรแกรม Cygwin ทั้งหมดประกอบด้วยที่เก็บและแม้ว่า Cygwin จะไม่มีตัวจัดการแพ็คเกจ Linux แบบดั้งเดิมที่คุณสามารถเพิ่มลบและอัปเดตโปรแกรมจากที่เก็บนี้ได้ตลอดเวลาด้วยวิธีที่ตอบโต้ได้ง่ายมาก (คุณเรียกใช้ setup.exe ของ Cygwin ที่ เมื่อใดก็ตามหลังจากการติดตั้งเสร็จสิ้น)
Babunเป็น Cygwin พร้อมผู้จัดการแพ็คเกจเต็มรูปแบบ (ข้อตกลง), oh-my-zsh สำหรับเชลล์, คอมไพล์, การอัพเดตอัตโนมัติและสถาปัตยกรรมเชิงปลั๊กอิน แม้ว่าเชลล์เริ่มต้นคือ zsh คุณสามารถเปลี่ยนไปใช้ bash ได้อย่างง่ายดาย ดูเหมือนว่าจะเป็นการอัพเกรดที่ดีจากวานิลลา Cygwin หากคุณไม่คำนึงถึงน้ำหนักที่เพิ่มขึ้น
Mingw-w64 แสดงสิ่งต่อไปนี้:
MinGW คือการกระจายซอฟต์แวร์เป็นหลักและเป็นแพลตฟอร์มการสร้างสำหรับ Windows โดยเฉพาะอย่างยิ่งมันเป็นพอร์ต Windows ของเครื่องมือคอมไพเลอร์ GNU เช่น GCC, make, bash และอื่น ๆ มันมีเครื่องมือ GNU ในจำนวนที่พอใช้และเลเยอร์ความเข้ากันได้ของ Unix ที่น้อยที่สุด
ความแตกต่างที่สำคัญระหว่าง Mingw-w64 และ Cygwin นั้นมีความสำคัญ: Cygwin มีจุดมุ่งหมายเพื่อให้ชั้นความเข้ากันได้ของ POSIX ที่สมบูรณ์ซึ่งประกอบด้วยการใช้งานการเรียกและไลบรารีระบบ Unix ที่สำคัญทั้งหมด ประสิทธิภาพเป็นรองสำหรับความเข้ากันได้ MinGW มีจุดมุ่งหมายเพื่อประสิทธิภาพดังนั้นมันจะไม่ให้ POSIX APIs บางอย่างซึ่งไม่สามารถใช้งานได้ง่ายและ / หรือเร็วพอใน Windows เป้าหมายหลักของ MinGW ก็คือนักพัฒนา S / W อย่างไรก็ตามผู้ใช้ที่ไม่เป็นทางการอาจสนุกกับเชลล์และวัตถุประสงค์ทั่วไปรวมถึงสาธารณูปโภค
MSYS2 จัดเตรียมสิ่งต่อไปนี้:
MSYS2 นั้นส่วนใหญ่เป็นการแจกจ่ายซอฟต์แวร์และแพลตฟอร์มการสร้างสำหรับ Windows เช่น MinGW แต่มันรวมทั้งทางของ Cygwin และทางของ MinGW คุณสามารถใช้ MSYS2 ที่จะสร้าง"โปรแกรม MinGW"หรือ"โปรแกรม MSYS2" ลิงค์ในภายหลังไปยังเลเยอร์ความเข้ากันได้ของ MSYS2 (msys-2.dll) ซึ่งตัวเองติดตามการพัฒนาเลเยอร์ความเข้ากันได้ของ Cygwin อย่างใกล้ชิดด้วยการเพิ่ม / แก้ไขเล็กน้อย ที่เก็บของ 2 โครงการนั้นไม่เกี่ยวข้องกันอย่างสมบูรณ์ ดังนั้นแม้ว่าทั้ง MSYS2 และ Cygwin จะให้grep.exe
พวกเขาอาจมีรุ่นที่แตกต่างอย่างสิ้นเชิง
Git สำหรับ Windowsเป็นอย่างใดอย่างหนึ่งเพียง MSYS2 กับคอมไพล์ที่ติดตั้งหรืออย่างน้อยก็หนักอยู่บนพื้นฐานของ MSYS2 มันมีเชลล์ (ทุบตี) เทอร์มินัล (Mintty) และตัวจัดการแพ็กเกจ (pacman) เดียวกัน ดูเหมือนว่าจะเป็นวิธีที่ได้รับความนิยมมากที่สุดในการทำให้ Git ที่โดดเด่นทำงานบน Windows และคุณจะได้รับสภาพแวดล้อม Unix ที่ดี
WSL แก้ปัญหาเดียวกันโดยใช้วิธีที่แตกต่างอย่างสิ้นเชิง คุณเรียกใช้รหัสเดียวกันกับที่คุณรันบนระบบ Linux บน WSL ซึ่งขัดขวางการเรียกเคอร์เนลและแปลเป็นการเรียกเคอร์เนลของ windows (ซึ่งตรงกันข้ามกับ Wine) แน่นอนการแปลไม่สามารถที่สมบูรณ์แบบ แต่ไมโครซอฟท์ droped เตือนเบต้า เนื่องจาก WSL ไม่สามารถใช้งานได้บน Windows Server ก่อนปี 2018 ฉันไม่ได้มองมันมากขนาดนั้น อย่างไรก็ตามคุณจะได้รับ bash shell ที่ดีกับสารพัด CLI ส่วนใหญ่ที่คุณคาดหวังว่าจะพบในการติดตั้ง Ubuntu ในสต็อก Microsoft ระบุอย่างเป็นทางการว่า"WSL ไม่ได้มีเป้าหมายเพื่อสนับสนุน GUI เดสก์ท็อปหรือแอปพลิเคชัน"อย่างไรก็ตามมีคำแนะนำอย่างไม่เป็นทางการเกี่ยวกับวิธีการทำ ดูเหมือนว่าขณะที่สิ่งต่าง ๆ เกิดขึ้นในขณะนี้ (ต้นปี 2561) ข้อเสียเปรียบหลักของ WSL มีดังนี้: a) การเรนเดอร์หน้าจอและการเข้าถึงดิสก์ช้ามาก b) คุณไม่ควรแก้ไขไฟล์ WSL (Linux) จาก Windows c) มันทำงานบน Windows 64 บิตเท่านั้น นี่เป็นการเปรียบเทียบที่เก่า แต่ดีกับ cygwin (โปรดทราบว่า Rich Turner เป็นสมาชิกของทีม WSL และเขาได้โพสต์ข้อมูลที่เป็นประโยชน์มากมายเกี่ยวกับ WSL)
ยกเว้นจาก WSL เครื่องมือส่วนใหญ่ข้างต้นใช้เทคโนโลยีร่วมกันจำนวนมาก (ไลบรารี, ไฟล์เรียกทำงาน, แนวคิด) ตัวอย่างเช่นเปลือก bash ที่มาพร้อมกับ MinGW ขึ้นอยู่กับ msys-2.dll ซึ่งตัวเองเป็นทางแยกของ cygwin.dll ใช่แล้วมีที่ว่างมากมายสำหรับความสับสน :-)
Cmderจัดเตรียมเทอร์มินัลที่ดีและเชลล์แบบทุบตีสำหรับ Windows มันเป็นองค์ประกอบหลักคือ Conemu (ขั้ว) ยิ่งไปกว่านั้นมันเพิ่ม Clinkซึ่งให้การแก้ไขบรรทัดคำสั่งสไตล์ Bash ที่ทรงพลังรูปแบบการแจ้งเตือนแบบกำหนดเองและโทนสี Monokai มันสูง (หรืออาจจะเต็ม) เข้ากันได้กับโปรแกรมคอนโซล windows พื้นเมือง
Scoopเป็นผู้จัดการแพคเกจบรรทัดคำสั่งสำหรับโปรแกรมข้ามแพลตฟอร์มที่รู้จักกันดีรวมถึงเครื่องมือ GNU จำนวนมาก มันดาวน์โหลดแพคเกจที่รวบรวมไว้ล่วงหน้า มันไม่ได้ให้ทั้งเชลล์และเทอร์มินัลแต่ทำงานภายใต้ windows 'cmd.exe (ซึ่งมีข้อ จำกัด ทั้งหมด แต่ยังมีความเข้ากันได้เต็มรูปแบบกับโปรแกรมคอนโซลของ windows ดั้งเดิม) นอกจากนี้ยังไม่มีชุดคอมไพเลอร์ (แต่แน่นอนว่าคอมไพเลอร์และเครื่องมือในการพัฒนาเป็นแพ็คเกจทั่วไปที่คุณสามารถติดตั้งได้ด้วยสกู๊ป) โปรแกรมจำนวนมากที่ Scoop ติดตั้งมาโดยตรงจากโครงการ MinGW / MSYS หรือถูกสร้างขึ้นโดยใช้เครื่องมือของพวกเขา
วิธีการแก้ปัญหาการร้องไม่ทำงานและฉันไม่เคยทดสอบ แต่ดูเหมือนพวกเขาจะทำงานให้ผู้อื่น:
Gow (Gnu บน Windows) เป็นทางเลือกที่มีน้ำหนักเบาสำหรับ Cygwin โดยไม่มีเชลล์ มันใช้ตัวติดตั้ง Windows ที่สะดวกสบายซึ่งติดตั้งแอปพลิเคชั่น Linux โอเพ่นซอร์สที่มีประโยชน์ประมาณ 130 รายการที่รวบรวมเป็นไบนารี win32 ดั้งเดิมและพร้อมใช้งานผ่าน windows 'cmd.exe มันถูกออกแบบให้มีขนาดเล็กที่สุดเท่าที่จะเป็นไปได้ (ประมาณ 10 MB)
UnxUtils & GnuWin32 : UnxUtilsคือชุดของพอร์ตของยูทิลิตี้เหมือน GNU Unix ทั่วไปสำหรับ Win32 ดั้งเดิมโดยมีไฟล์ปฏิบัติการขึ้นอยู่กับ Microsoft C-runtime msvcrt.dll เท่านั้น คุณต้องดาวน์โหลดส่วนหลักและอัปเดตบางอย่าง GnuWin32มีรุ่นที่ใหม่กว่า UnxUtils แต่ต้องการไฟล์ที่รองรับ (เช่น DLLs)
MSYSและMinGWดูเหมือนจะได้รับการจำหน่ายแล้วโดย MSYS2 และ MinGW-W64 ดังนั้นผมจึงไม่เคยมองไปที่พวกเขา
Mintty เป็นเครื่องที่ใช้ใน Cygwin, MSYS2 และอนุพันธ์ของพวกเขา สิ่งหนึ่งที่ควรระวังคือหากคุณใช้งานโปรแกรมคอนโซลเนทิฟ windows มันไม่ได้เป็นการแทนที่คำสั่งที่ไม่เจ็บปวดของ Windows Command Prompt ในขณะที่โปรแกรมที่มีการส่งข้อความแบบธรรมดามักใช้งานได้ดีส่วนการโต้ตอบและแบบเต็มหน้าจอมักจะมีปัญหา อ่านเพิ่มเติมเกี่ยวกับหน้าบ้าน mintty ของและยังอ่านรายการ "บางโปรแกรมคอนโซลพื้นเมืองไม่ทำงานเมื่อเรียกใช้จาก Git ทุบตี" ในGit สำหรับ Windows คำถามที่พบบ่อย ข้อความนั้นมีคำแนะนำนี้ที่ต้องทำเมื่อคุณประสบปัญหาเช่นนี้:
มีหลายวิธีในการแก้ไขปัญหาเหล่านี้:
- เรียกใช้โปรแกรมที่มีปัญหาโดยใช้ยูทิลิตี้winpty สิ่งนี้ช่วยให้คุณสามารถใช้เทอร์มินัล nicer mintty ได้ แต่อาจกลายเป็นเรื่องไม่สะดวกหากคุณต้องการวิธีแก้ปัญหาสำหรับหลาย ๆ โปรแกรม
- [ใช้ cmd.exe] และกำหนดค่าสำหรับ "แก้ไขด่วน" ขนาดที่เหมาะสมและเลื่อนกลับและแบบอักษรยูนิโค้ดที่เหมาะสม คุณจะต้องใช้ชีวิตร่วมกับองค์ประกอบอื่น ๆ ของ [cmd.exe]
- ติดตั้งและใช้Conemu
สิ่งสำคัญสองประการที่ควรคำนึงถึงคือ:
มีการแลกเปลี่ยนระหว่างอำนาจกับปัญหาการแก้ไขข้อบกพร่องอย่างหนัก ยิ่งโซลูชันมีประสิทธิภาพมากเท่าไหร่สิ่งต่าง ๆ มากขึ้นก็อาจผิดพลาดได้แม้ในลักษณะที่จะไม่เกี่ยวข้องกับเลเยอร์ Linux ของคุณในตอนแรก
หากคุณไม่มีประสบการณ์ Linux มากมายอย่าใช้โซลูชันที่ทรงพลังเช่น Cygwin / MSYS2 / MinGW
UnxUtils และ GnuWin32 มีพลังน้อยที่สุด แต่ก็มีโอกาสน้อยที่ทำให้คุณปวดหัว Cygwin และที่คล้ายกันจะอยู่ด้านบนของแถบพลังงานและปวดหัว Cmder อยู่ตรงกลาง ดังนั้นเมื่อคุณต้องการโซลูชั่นที่ทรงพลังที่สุดให้นอนหลับพักผ่อนอย่างเต็มที่และมีสมาธิอย่างเต็มที่ หลีกเลี่ยงการใช้โซลูชันที่ทรงพลังขณะทดสอบสิ่งใหม่และอาจไม่เสถียร อย่าลืมว่าโซลูชันความซับซ้อนระดับกลางเช่น cmder นั้นไม่สะอาดสะอ้าน
ปัญหาของคำสั่ง Linux ที่เกิดเงาหน้าต่างเป็นสาเหตุของปัญหาในการดีบักยากในโซลูชันเช่น Cygwin / MSYS2 / MinGW นี่คือตัวอย่าง: ฉันมีไฟล์. bat ที่ใช้คำสั่ง timeout เมื่อทำงานภายใต้ Cygwin จะล้มเหลวเนื่องจากการหมดเวลาเป็นคำสั่ง Linux แต่มีไวยากรณ์แตกต่างกัน หลังจากฉันพบปัญหาฉันพบว่าฉันสามารถเพิ่ม PATH = ... ที่ด้านบนของไฟล์. bat เพื่อให้แน่ใจว่าคำสั่ง windows มีลำดับความสำคัญ แต่ฉันได้รับข้อผิดพลาด"ไม่สนับสนุนการเปลี่ยนเส้นทางอินพุต" ที่เป็นความลับยิ่งขึ้นและถูกตัดสินเพื่อหาวิธีแก้ไขก่อนที่จะหาเหตุผล
นี่คือตัวอย่างของปัญหากับ cmder ผมทำงาน Windows รุ่นของพร้อมเพรียงภายใต้ Cmder และภายใต้เงื่อนไขพิเศษบางอย่างที่มันถูกแขวนอยู่กับข้อผิดพลาดอย่างไม่มี คำสั่งเดียวกันทำงานอย่างสมบูรณ์แบบเสมอภายใต้ cmd.exe สิ่งที่ตลกก็คือมันทำงานได้อย่างสมบูรณ์แบบภายใต้ Cygwin (อันที่จริงถ้าคุณมีชื่อไฟล์ Unicode ขั้ว Cygwin จะดีกว่า cmd.exe เพราะ cmd.exe มักจะแสดงข้อความ Unicode ผิดรูปแบบ)
ในช่วง 2017-05 ฉันไม่สบายที่ไม่เข้าใจความแตกต่างของเครื่องมือข้างต้นแม้ว่าฉันจะใช้บางอย่างมานานแล้ว (ส่วนใหญ่ CygWin และ cmder แต่ไม่เคยมีเพื่อการพัฒนา) ดังนั้นฉันจึงใช้เวลาสองสามชั่วโมงเพื่อสำรวจภูมิประเทศ คู่มือนี้เป็นผลลัพธ์ของบันทึกย่อที่ฉันเก็บไว้ ฉันไม่ใช่ผู้เชี่ยวชาญในสนาม แต่ฉันพยายามหาข้อมูลที่เกี่ยวข้องทั้งหมดอ่านด้วยตาที่สำคัญและนำเสนอชิ้นส่วนที่สำคัญที่สุดอย่างชัดเจน โปรดแสดงความคิดเห็นหากสิ่งที่ดูเหมือนผิดและฉันจะทำให้ดีที่สุดเพื่อแก้ไข
ในที่สุดคำขอโทษสำหรับปัญหาศัพท์บางคำ: ในบางครั้งฉันใช้คำว่า Linux แทน UNIX หรือ POSIX ฉันรู้ว่าพวกเขาไม่เหมือนกัน แต่มันยากมากที่จะแยกความแตกต่างระหว่างพวกเขาเมื่อเข้าใกล้หัวข้อจากระยะไกลเช่น แม้ว่ามันจะไม่ยาก แต่ก็ต้องใช้เวลาที่ฉันไม่มี ;-)
pacman
ไม่ใช่packman
ผมขอแนะนำให้คุณดาวน์โหลดและติดตั้งน้อยที่สุดชุดของMinGWและชุดที่น้อยที่สุดของ MSYS โปรแกรมติดตั้ง MinGW ให้ GUI ที่ง่ายสำหรับคุณในการเลือกแพ็คเกจที่คุณต้องการติดตั้ง หากสิ่งที่คุณต้องการคือ BASH การติดตั้งจะไม่ใช้เวลาเกินสองสามเมกะไบต์
UPDATE: ฉันย้ายไปที่MSYS2ซึ่งสูงกว่ามากและมีพอร์ตของเครื่องมือ ArchLinux pacman สำหรับการจัดการบรรจุภัณฑ์ ติดตั้ง MSYS2 มีทุกสิ่งที่คุณต้องการรวมทั้งจะใช้minttyซึ่งเหมาะอย่างยิ่ง
นอกจากนี้ยังมีคุกใช้ได้ที่ GitHub มันรวมตัวเองเป็นพรอมต์คำสั่งของ windows โดยใช้ตะขอห้องสมุด
จากคำอธิบายโครงการ:
Clink รวมเชลล์ Windows cmd.exe ดั้งเดิมเข้ากับคุณสมบัติการแก้ไขบรรทัดคำสั่งอันทรงพลังของไลบรารี GNU Readline ซึ่งให้ความสามารถในการเติมเต็มประวัติและความสามารถในการแก้ไขบรรทัดให้สมบูรณ์
(ดังนั้นจึงไม่มีคุณสมบัติทุบตี -a-a-programming-language หรือสารพัด Unix อื่น ๆ )
ฉันใช้ Linux ในที่ทำงานและพบว่าตัวเองแท็บเป็นบางครั้งใน cmd ซึ่งไม่เหมือนที่ฉันคาดหวังจาก Bash ด้วย Clink ฉันสามารถเอาชนะข้อบกพร่องเหล่านี้ได้
เมื่อเร็ว ๆ นี้ฉันยังค้นพบโครงการที่มีแนวโน้ม แต่ยังไม่สามารถ 'เรียกว่า' ทั้งหมดได้ที่เรียกว่าflinuxซึ่งเลียนแบบฟังก์ชันของระบบ Linux และให้ระบบบางชนิดที่อยู่ด้านบน (ปัจจุบันใช้ Arch Linux)
cmd.exe
ดังที่อธิบายไว้ในเว็บไซต์;)
นอกจากสิ่งที่ faffaffaff กล่าวแล้วGit สำหรับ Windowsยังรวมถึง Bash และโปรแกรมบรรทัดคำสั่ง Linux ทั่วไปบางโปรแกรม (เช่นVim , sedและgawk ) ก็ขึ้นอยู่กับMSYS รุ่นของโปรแกรมนั้นเก่า แต่ตัวอย่างเช่น Bash เป็นรุ่น 3.1 Cygwinจะมียูทิลิตี้เวอร์ชันล่าสุดมากกว่านี้
ฉันยังใช้ConEmuเป็นเทอร์มินัลอีมูเลเตอร์ (ส่วนใหญ่ใช้สำหรับการเน้นไวยากรณ์ในกลุ่มหน้าแท็บและการวางสำเนาได้ง่ายขึ้น) console2เป็นอีกหนึ่ง terminal terminal emulator ที่เป็นที่นิยมแม้ว่าฉันจะไม่ได้ลอง
นี่เป็นหนึ่งในสิ่งแรกที่ฉันทำเมื่อตั้งค่าเครื่อง Windows ใหม่:
ฉันเพิ่งลองกับBabunซึ่งรวม Cygwin ไว้ภายในแล้วก็มีรสชาติที่ดีสำหรับฉัน :)
ไฟล์ดาวน์โหลดมีขนาดใหญ่เล็กน้อยประมาณ 250 MB แต่การติดตั้งนั้นเรียบง่าย ไม่จำเป็นต้องกำหนดค่าอะไรและมันก็ใช้งานได้!
putty
เชื่อมต่อกับเซิร์ฟเวอร์ linux จริง บน windows ฉันมักจะลังเลและอยากจะใช้cygwin
ลังเลเพราะประสบการณ์การติดตั้งที่เงอะงะของฉัน แต่โดยส่วนตัวแล้วฉันพบว่าใช้งานได้สะดวกกว่า msys และเร็วกว่า vm เมื่อติดตั้งแล้ว cygwin ปรากฎว่าพกพาได้อย่างง่ายดายเพียงแค่คัดลอกไดเรกทอรีมันก็เพียงพอแล้วอย่างไรก็ตามมันจะสร้างชื่อผู้ใช้ใหม่ในแต่ละเครื่อง / ผู้ใช้ตามชื่อผู้ใช้ windows (โดยค่าเริ่มต้นอย่างน้อย) แต่โปรดจำไว้ว่าเนื่องจาก cygwin / msys สามารถมองเห็นได้ว่าเป็น "การกระจาย" แบบกำหนดเองสวิตช์คำสั่ง [ไม่จำเป็น] บางตัวอาจหายไป ทดสอบพวกเขา