Windows Komut Satırı Araçları

Zamanımızın çoğunu OSX ve Linux'ta kod yazmaya harcayan geliştiriciler olarak Windows'da modern bir komut satırı kurulumunun nasıl görüneceğini merak ediyorduk.

Bir StackOverflow geliştirici anketi, Windows kullanan geliştirici sayısının diğer işletim sistemlerine kıyasla daha fazla olduğunu gösterdi. Bu yüzden, kullanılan araçların *nix land'dakilerle denk olup olmadığını merak ediyorduk.

Windows CLI araçlarının ortamını değerlendirmek için biraz zaman ayırdıktan sonra, yolumuza% 95 oranında ulaşacağımızı düşündüğümüz bir dizi araç üzerinde karar kıldık.

Günün sonunda, aşağıdakilerin birleşiminden yararlandık:

  • PowerShell
  • ConEmu
  • PSReadLine
  • PSGet
  • Çikolatalı
  • Babun (isteğe bağlı)

Bu farklı makine parçalarının size ne kazandırdığıyla ilgili daha fazla not için aşağıya bakın.

PowerShell (kabuk)

  • cmd.exe'den çok gerçek bir "kabuk"a daha yakındır ve bize görev otomasyonu için güçlü bir kodlama ortamı sunar. Bash veya zsh ile karşılaştırabilirsiniz.
  • Dizin ve dosya adlarını otomatik tamamlar
  • Uygulama adlarını otomatik tamamlar
  • Entegre takma adlara ve komutlara sahiptir (cmdlet'ler olarak adlandırılır; ör.Select-String grep, Invoke-Elevated gibi sudo, Sort-Object sort gibidir, Get-Process tüm etkin işlemleri listeler). Başka bir kabuktan PS'ye geçiyorsanız Set-Alias, alışkın olduğunuz takma adları Windows eşdeğerleriyle eşleştirmenize olanak tanır. Örneğin: Set-Alias server python -m http.server 8000, server takma adı kullanıldığında bir Python sunucusu başlatır.
  • Takma adlar PowerPoint profilinde korunabilir
  • Unix gibi kablolama desteklenir. Unix'in aksine bu sistem, metin akışlarını değil nesneleri hizalar. Bu yönteme alışmanız gerekir ancak bir mülkü çıkarmak istediğinizde yeniden ayrıştırma yapmaktan kaçınırsınız.
  • Modülleri destekler. PSGet, Powershell'i kolayca genişletmenize olanak tanıyan bir paket yöneticisidir.
  • İsteğe bağlı olarak, içeriğe dayalı sekme tamamlaması elde etmek için git için bir PowerPoint komut dosyası olan Posh-Git'i düşünebilirsiniz.

Bilgi yarışmasıyla ilgileniyorsanız MS'nin neden baş mimardan Powershell'i geliştirdiğiyle ilgili bilgiyi burada bulabilirsiniz.

PSReadLine (konsol düzenleme yardımcıları)

  • Konsol düzenleme deneyimini önemli ölçüde iyileştirir
  • Komut yazmaya başladığınızda söz dizimi vurgulaması. Söz dizimi hatalarını kırmızı bir ">" karakteriyle açık bir şekilde belirtir.
  • Yüksek düzeyde özelleştirilebilir tuş bağlamaları
  • Bash tarzı otomatik tamamlama
  • Bash/zsh etkileşimli geçmiş araması (Ctrl + R). Güçlü komut geçmişi geçişi. Komutun son satırı yerine ok tuşlarını kullanarak önceki çok satırlı komutları kolayca görüntüleyin.
  • Kopyalama/yapıştırma/kesme için uygun destek (Ctrl+C/X/V düzgün çalışmalıdır)
  • Geri alma/yeniden yapma için iyi destek
  • Geçmişe kayıt otomatik olarak yapılır

Alternatif olarak, benzer özelliklere sahip olan ancak tamamen Powershell için geliştirilmemiş olan Clink'i de kullanabilirsiniz.

ConEmu (konsol ana makinesi)

  • İstediğiniz kabuk çalıştırabileceğiniz gelişmiş bir konsol emülatörü.
  • Birden fazla terminalin farklı sekmelerde açılmasını destekler. Terminalleri farklı kullanıcılar olarak başlatmayı basitleştirir.
  • Son derece özelleştirilebilir: Kısayollardan metin seçimine ve durum çubuğu renklerine kadar her şey değiştirilebilir.
  • Bölünmüş ekran görünümünü destekler
  • Basit GUI uygulamaları sekmelerde çalıştırılabilir
  • Windows 7+ Atlama Listeleri Desteği
  • Sorunsuz pencere yeniden boyutlandırmayı destekler
  • Windows yazı tipi yumuşatma
  • Başlangıç sekmeleri belirli bir dizinden başlayacak şekilde tamamen özelleştirilebilir
  • Akıllı kopyalama/yapıştırma

Bazı kullanıcılar Console2'yi kullanmaktan hâlâ keyif alıyor ve Scott Hanselman'ın bununla ilgili yazılmış bir yayını var.

Cmder

ConEmu, Clink ve msysgit'i bir araya getiren konsol emülasyon paketi Cmder, size Git yardımcıları sunar. Cmder, varsayılan olarak Monokai renk şemasıyla ConEmu'ya daha güzel bir deneyim sunar.

Cmder, Sublime Text gibi GUI uygulamalarıyla entegrasyon gibi başka küçük avantajlar da içerir.

Çikolatalı (paket yöneticisi)

  • Windows için ev yapımı biramız sayesinde favori Windows uygulamalarınızı rahatça yükleyebilirsiniz. Şu anda doğrudan Çikolata kullanılarak güncellenebilen yaklaşık 3000 paket var.
  • Nuget'ten farklıdır. NuGet, geliştirme kitaplıkları içindir. Çikolata, ikili makine paket yöneticisidir ve NuGet altyapısı üzerine kurulmuştur.
  • Etkili sessiz derlemeler sunar

Microsoft'un Windows 10'da zorunlu çikolata yöneticisi OneGet hakkında da bilgi edinmek isteyebilirsiniz.

Babun (Cygwin önceden yapılandırılmış)

  • Cygwin (Windows için Linux benzeri ortam) ile geçmişte bilinen bazı ilginç özellikler çıkarılmıştır. Babun yükleyicisi kullanıldığında genel kurulum çok daha basittir. Özellikle Unix konusunda deneyimliyseniz ve Powershell'i öğrenmek istemiyorsanız cygwin/Babun'u kullanmanız önerilir.
  • apt-get benzeri pact adında bir paket yöneticisi (brew ile biraz benzer) içerir. Şu anda paket eklerken veya pact kullanırken Cygwin yükleyiciyi yeniden çalıştırmanız gerektiğinden bu büyük bir meseledir.
  • Vim önceden yüklenmiş ve önceden yapılandırılmış
  • Oh-my-zsh için entegre destek
  • Otomatik güncellemeler

Ek Okumalar