Alat Command Line Windows

Sebagai developer yang menghabiskan sebagian besar waktu melakukan coding di OSX dan Linux, kami ingin tahu seperti apa konfigurasi command line modern di Windows.

Survei developer StackOverflow mengingatkan kami bahwa ada lebih banyak developer yang menggunakan Windows daripada OS lain, jadi kami ingin tahu apakah alat yang ada di sana setara dengan yang biasa kami gunakan di lingkungan *nix.

Setelah mengevaluasi lanskap alat CLI Windows, kami menetapkan serangkaian alat yang menurut kami dapat membantu kami mencapai 95%.

Pada akhirnya, kita sampai pada kombinasi dari:

  • PowerShell
  • ConEmu
  • PSReadLine
  • PSGet
  • Cokelat
  • Babun (opsional)

Lihat di bawah untuk beberapa catatan tentang apa yang diberikan oleh berbagai mesin ini kepada Anda.

PowerShell (shell)

  • Jauh lebih dekat ke 'shell' daripada cmd.exe, yang menawarkan lingkungan skrip yang canggih untuk otomatisasi tugas. Anda dapat membandingkannya dengan Bash atau zsh.
  • Melengkapi otomatis direktori dan nama file
  • Pelengkapan otomatis nama aplikasi
  • Memiliki alias dan perintah terintegrasi (disebut cmdlets - misalnya Select-String seperti grep, Invoke-Elevated seperti sudo, Sort-Object seperti sort, Get-Process mencantumkan semua proses aktif). Jika berpindah dari shell lain ke PS, Set-Alias memungkinkan Anda memetakan alias yang biasa Anda gunakan ke Windows yang setara. Misalnya: Set-Alias server python -m http.server 8000 meluncurkan server Python saat alias server digunakan.
  • Alias dapat dipertahankan di profil PowerShell
  • Mendukung {i>piping<i}, seperti Unix. Tidak seperti Unix, Unix menyalurkan objek, bukan aliran teks. Hal ini mengharuskan Anda untuk membiasakan diri, tetapi menghindari proses pencocokan saat Anda ingin keluar dari properti.
  • Mendukung modul. PSGet adalah pengelola paket untuk PowerShell yang memungkinkan Anda memperluasnya dengan mudah.
  • Secara opsional, pertimbangkan Posh-Git, skrip PowerShell untuk git guna mendapatkan penyelesaian tab kontekstual.

Jika Anda tertarik dengan trivia, berikut jawaban mengapa MS membuat PowerShell dari arsitek utama.

PSReadLine (alat bantu pengeditan konsol)

  • Meningkatkan pengalaman pengeditan konsol secara signifikan
  • Penandaan sintaksis setiap kali Anda mulai mengetik perintah. Menunjukkan error sintaksis dengan karakter ">" berwarna merah dengan jelas.
  • Binding tombol yang sangat mudah disesuaikan
  • Pelengkapan otomatis gaya Bash
  • Penelusuran riwayat interaktif Bash/zsh (Ctrl + R). Traversal histori perintah yang kuat juga. Lihat perintah multibaris sebelumnya dengan mudah menggunakan tombol panah, bukan hanya baris terakhir dari perintah tersebut.
  • Dukungan yang tepat untuk salin/tempel/potong (Ctrl+C/X/V seharusnya berfungsi dengan baik)
  • Dukungan yang baik untuk mengurungkan/mengulangi
  • Penyimpanan histori dilakukan secara otomatis

Atau, Anda dapat menggunakan Clink, yang memiliki serangkaian fitur serupa tetapi tidak ditulis secara khusus untuk PowerShell.

ConEmu (host konsol)

  • Emulator konsol canggih tempat Anda dapat menjalankan shell pilihan.
  • Mendukung pembukaan beberapa terminal di tab yang berbeda. Meluncurkan terminal sebagai pengguna yang berbeda menjadi lebih mudah.
  • Sangat mudah disesuaikan - semuanya mulai dari pintasan hingga pilihan teks dan warna status bar dapat diubah.
  • Mendukung tampilan layar terpisah
  • Aplikasi GUI sederhana dapat dijalankan di tab
  • Dukungan untuk Windows 7+ Jump Lists
  • Mendukung pengubahan ukuran jendela yang lancar
  • Anti-aliasing font Windows
  • Tab awal dapat disesuaikan sepenuhnya untuk dimulai dari direktori tertentu
  • Salin/tempel cerdas

Sebagian orang masih suka menggunakan Console2 dan Scott Hanselman memiliki postingan blog yang ditulis tentang hal itu.

Cmder

Catatan yang perlu diingat adalah Cmder - paket emulasi konsol yang menggabungkan ConEmu, Clink, dan msysgit - yang memberi Anda pembantu Git. Cmder pada dasarnya memberi Anda pengalaman yang lebih menarik untuk ConEmu secara default melalui skema warna Monokai.

Cmder juga menyertakan beberapa manfaat kecil lainnya, seperti integrasi dengan aplikasi GUI seperti Sublime Text.

Chocolatey (pengelola paket)

  • Pada dasarnya homebrew untuk Windows, yang memungkinkan Anda membuka aplikasi Windows favorit dengan mudah. Saat ini tersedia ~3 ribu paket yang dapat diperbarui menggunakan Chocolatey secara langsung.
  • Berbeda dengan Nuget. NuGet ditujukan untuk library pengembangan. Chocolatey adalah pengelola paket mesin biner yang dibangun di infrastruktur NuGet.
  • Menawarkan build senyap yang efektif

Anda mungkin juga tertarik untuk mempelajari OneGet, pengelola paket Microsoft..manager, yang seharusnya berfungsi dengan Chocolatey di Windows 10.

Babun (Kini WYSIWYG telah dikonfigurasi sebelumnya)

  • WYSIWYG (lingkungan mirip Linux untuk Windows) dikurangi beberapa keunikan yang secara historis dikenal. Penyiapan keseluruhan jauh lebih sederhana menggunakan penginstal Babun. Jika Anda sangat berpengalaman dengan Unix dan lebih memilih untuk menghindari mempelajari PowerShell, cygwin/Babun patut dipertimbangkan.
  • Menyertakan pengelola paket bernama pact (sedikit mirip dengan brew) yang mirip dengan apt-get. Ini adalah masalah besar karena saat ini Anda harus menjalankan kembali penginstal sambil menambahkan paket vs. hanya menggunakan pact.
  • Vim yang telah diinstal dan dikonfigurasi sebelumnya
  • Dukungan terintegrasi untuk "oh-my-zsh"
  • Update otomatis

Bacaan Lebih Lanjut