Microsoft, Windows ile birlikte gelen ve iki on yıldır kullanılan komutları sessizce kaldırıyor. WMIC 2024 yılında kaldırıldı ve o zamandan beri her sürüm birkaç tanesini daha kaldırdı. 2015’ten eski bir komut dosyası hala yedeklemelerimizi, geri yüklemeyi veya ekleme görevlerini çalıştırıyorsa, o saat işliyor. İyi haber, yenilik zaten burada ve çoğu durumda daha iyi. Eski komutların yaptığı hemen hemen her şeyi kapsayan ve hiçbir zaman yapamadığı birkaç şey yapan yedi aracı seçtik.
Bir değiştirmede ne arayacağınız
Doğru araç, eski komutun ne için olduğuna bağlıdır. Bir geçiş planlarken bu özellikleri arayın.
- Donanım grubunuz halen çalıştıran her Windows sürümünde kullanılabilir
- Gözetimsiz çalışır, çünkü birçok eski komut zamanlanmış görevlerin içinde yaşıyordu
- Bir komut dosyasının elle ayarlamadan ayrıştırabileceği tahmin edilebilir çıkış
- İnsan da onu okuyabilsin diye etkileşimli ve boru hattı kullanımı desteği
- Bugün komut dosyalarını nasıl imzaladığımız ve dağıttığımız şekilde uyumlu
- Güvendiğiniz bir gelecek: aşağıda listelenen yeniliklerden bazıları zaten bir kaldırma döngüsünü atlattı
Hızlı karşılaştırma
| Uygulama | Şunun için en iyi | Ücretsiz plan | Öne çıkan özellik |
|---|---|---|---|
| PowerShell 7 | WMIC, systeminfo ve net’in yaptığı her şey | Evet | Ayrıştırılan dizeler yerine yapılandırılmış nesneler |
| Windows Terminal | Bunların çoğunun çalışması gereken ana bilgisayar | Evet | Sekmeler, bölünmüş paneller ve modern oluşturma |
| PSTools | Uzaktan yönetim ve teşhis | Evet | psexec hala günü kurtarıyor |
| Nushell | PowerShell ağır hissettiren modern komut dosyası | Evet | Veri yönelimli boru hatları |
| WSL2 | Unix araçlarıyla daha iyi yapılan herhangi bir şey | Evet | Windows’ta gerçek bash ve grep |
| Git Bash | Komut dosyaları için hafif coreutils | Evet | WSL olmadan tanıdık Linux araçları |
| PowerToys Command Palette | Çalıştır’dan çıkan etkileşimli görevler | Evet | Desteklenen bir uzantı modeli ile birlikte gelir |
Uygulamalar
1. PowerShell 7 — WMIC ve çoğu eski CMD araçları için en iyi yenilik
PowerShell 7, Microsoft’un güncellemeyi devam ettirmek istediği modern kabuğudur. Get-CimInstance, WMIC’in yaptığı işin büyük çoğunluğunu kapsar, Get-ComputerInfo, systeminfo‘nun ürettiği işi yönetir ve geri kalan yerleşik cmdlet’ler net use, net user ve sc.exe için yer değiştirir. Çıkış nesnelerdir, ayrıştırmanız gereken metin değil.
Nerede eksik kaldığı: Başlangıç süresi CMD’den daha yavaştır. Bazı çok eski komut dosyaları, PowerShell 7’nin kibarca reddettiği Windows PowerShell 5.1 hususiyetlerine dayanır.
Platformlar: Windows, Linux, macOS.
Fiyatlandırma: Ücretsiz, MIT lisansı.
İndir: github.com/PowerShell/PowerShell
Sonuç: 2020’den eski herhangi bir komut dosyası için varsayılan hedef. Kademeli olarak geçişi yapın.
2. Windows Terminal — buradaki diğer her şey için en iyi ana bilgisayar
Windows Terminal, bu listedeki tüm diğer araçların mutlu bir şekilde çalıştığı terminal ana bilgisayarıdır. Sekmeler, bölünmüş paneller, profil başına yazı tipleri ve JSON yapılandırması, PowerShell, WSL, Git Bash ve Nushell’i bir programa ayrılmadan yan yana kullanabileceğiniz anlamına gelir. Bu CMD ana bilgisayarının yerine geçer, CMD’nin kendisinin değil.
Nerede eksik kaldığı: Yerleşik seri konsol veya SSH profili yönetimi yok. Üçüncü taraf sarmalayıcılar boşluğu dolduruyor.
Platformlar: Windows 10 1903 veya daha yeni, Windows 11.
Fiyatlandırma: Ücretsiz, MIT lisansı.
İndir: github.com/microsoft/terminal
Sonuç: Bir kez yükleyin ve conhost‘u unutun.
3. PSTools — eski araç takımının uzaktan yönetim bölümleri için en iyi
PSTools Sysinternals’tan asla kaybolmadı. psexec, psloglist, psinfo ve pskill hala hiçbir başkasının yapamadığı işleri yapar. Bunlar, WMIC’in yönettiği uzaktan yönetim görevleri için boşluğu doldurur ve araçlar imzalı ve desteklenmiş kalır.
Nerede eksik kaldığı: PowerShell tarzı nesne çıkışı yok. Modern SOC araçları psexec‘i işaretler, çünkü saldırganlar da bunu kullanır.
Platformlar: Windows, artı sınırlı Linux bağlantı noktaları.
Fiyatlandırma: Ücretsiz, Microsoft EULA.
İndir: learn.microsoft.com/sysinternals/downloads/pstools
Sonuç: Bir komut dosyasının ajan olmadan diğer makinelere erişmesi gerektiğinde doğru seçim.
4. Nushell — yapılandırılmış, küçük komut dosyaları için en iyi
Nushell başlangıçtan verileri tablolar olarak görmektedir. ps | where cpu > 10 | sort-by mem | first 5 gibi bir satır işlem listesini okur, filtreler, sıralar ve yapılandırılmış verilerle ilk beşi alır. PowerShell ağır geldiği yerde, Nushell bir elektronik tablo gibi hissettiriyor.
Nerede eksik kaldığı: Ekosistem PowerShell’inkinden daha küçük. Bazı Windows COM birlikte çalışabilirlik henüz orada değil.
Platformlar: Windows, macOS, Linux.
Fiyatlandırma: Ücretsiz, MIT lisansı.
İndir: nushell.sh
Sonuç: PowerShell’in daha Unix benzeri olmasını dilediğini keşfettiğinde öğrenmeye değer.
5. WSL2 — Unix aracı doğru yanıt olduğunda en iyi
WSL2 Windows’un yanında gerçek bir Linux çekirdeği ile birlikte gelir. Eski komutun manevi yenilikçi awk, sed, curl veya belirli bir Python veya Node komut dosyası olduğunda, WSL2 bunların yaşadığı yerdir. Windows dosya sistemleriyle interop, her iki yönde komut dosyası oluşturmak için yeterince hızlıdır.
Nerede eksik kaldığı: Sınır boyunca dosya izleyicileri yavaş olabilir. Bazı kuruluşlarda Grup İlkesi hala bunu engeller.
Platformlar: Windows 10 21H2 ve daha yeni.
Fiyatlandırma: Ücretsiz.
İndir: “Windows Subsystem for Linux” özelliğini açın veya wsl --install çalıştırın.
Sonuç: Linux eşdeğeri tek satırlık bir komut dosyası buraya ait.
6. Git Bash — en iyi hafif coreutils
Git Bash, Git for Windows’un bir parçası olarak gelir ve çalışan bir bash, grep, awk, sed ve find getiriyor. WSL’nin ağırlığı olmadan sadece birkaç Unix aracına ihtiyaç duyan komut dosyaları için bu en küçük uyum.
Nerede eksik kaldığı: Paket yöneticisi yok. Git for Windows’un paketlediği şey aldığınız şey.
Platformlar: Windows.
Fiyatlandırma: Ücretsiz, GPL-2.0.
İndir: git-scm.com/download/win
Sonuç: Bir komut dosyasının üç Unix aracı istediğinde ve başka bir şey olmadığında doğru seçim.
7. PowerToys Command Palette — etkileşimli Run için en iyi yenilik
PowerToys Command Palette, birçok yönetici için Çalıştır ve Ara’nın yerini alan bir klavye harita aracıdır. Yeni komutlar için komut dosyası oluşturmanıza izin veren bir uzantı modeli ile birlikte gelir, böylece kas belleğinde yaşayan wmic tek çağrıları buraya taşınabilir.
Nerede eksik kaldığı: Bir kabuk değil. Şeyleri başlatır; boru hatlarını oluşturmaz.
Platformlar: Windows 10 22H2 veya daha yeni.
Fiyatlandırma: Ücretsiz, MIT lisansı.
İndir: learn.microsoft.com/windows/powertoys/command-palette
Sonuç: Artık CMD’ye ait olmayan etkileşimli tek satır çizgiler için doğru ev.
Doğru olanı seçme
- Eski komut WMIC,
netveyasysteminfoise: PowerShell 7 - Eski komut Çalıştır’dan etkileşimli ise: PowerToys Command Palette
- Eski komut diğer makinelere ulaştıysa: PSTools
- Yenilik en iyi Unix boru hattı olarak yazılmışsa: Ağır iş için WSL2, küçük komut dosyası için Git Bash
- PowerShell cmdlet’leri çok ayrıntılı geliyorsa: Nushell
- Her şey Windows Terminal‘de çalışır
SSS
Hangi Windows komutları gerçekten kaldırıldı? WMIC, Windows 11 24H2 ile başlayarak varsayılan olarak kaldırıldı. Diğerleri “eski” haline geldi, bu genellikle kaldırılmadan önce bir özellik güncellemesi daha anlamına gelir. Microsoft’un kendi amortisman dizini gerçeğin kaynağıdır.
Tüm komut dosyalarımı bir kerede yeniden yazmam mı gerekiyor? Hayır. Geçiş sırasında Windows PowerShell 5.1 ile birlikte PowerShell 7 çalıştırın; her ikisi de desteklenir. CI işlem hatları ve zamanlanmış görevler bunlara dokunduğunda komut dosyalarını taşıyın.
Windows PowerShell 5.1 de eski mi? Microsoft, eski uyumluluk için Windows’ta 5.1’i tutmayı taahhüt etmiştir, ancak yeni özellikler yalnızca PowerShell 7’ye iniyor. 5.1’i yalnızca bakım olarak düşünün.
24H2’den sonra WMIC’i çağıran komut dosyalarına ne olur? Bunlar “command not found” alırlar. İsteğe bağlı özellik kurulumu aracı bir süre için geri getirir, ancak bu yol uzun vadeli bir plan değil.
Tüm işlemler için Nushell’e geçmeliyim? Sadece beğendiysen. PowerShell 7 daha fazla Windows’a özel zemin kapsar ve daha geniş ekosistem vardır. Nushell veri işi için harika bir günlük sürücüdür.
Bu araçlar PowerShell Remoting üzerinde çalışıyor mu? PowerShell 7, WinRM veya SSH üzerinden kutudan çıkar çalışır. WSL2 ve Git Bash yereldir. PSTools, Uzak İşlem etkinleştirilmediğinde uzaktan iş için klasik yanıt olmaya devam eder.