PowerShell eşdeğerlerinin ve CMD komutlarına alternatiflerin listesi
PowerShell, Microsoft'un kendi Komut İstemi'ne alternatifidir. Daha önce Microsoft, PowerShell'i açık kaynak olarak kullanacaklarını ve onu Ubuntu, CentOS, Red Hat Enterprise Linux, OpenSUSE, Fedora ve macOS gibi farklı Linux türlerinin son sürümlerine taşıyacaklarını duyurmuştu. Ayrıca Windows ile birlikte gönderilen Powershell'in önceki sürümünden çok daha fazla özellik sunan PowerShell Core'u da piyasaya sürdüler. Sistem Yöneticileri için geliştirildi ve Komut İstemi'ne alternatif olması amaçlandı. PowerShell'in bu platformlar arası genişlemesiyle kullanıcılar farklı işletim sistemleri ve ortamları üzerinde çalışmanın avantajlarından yararlanacak.
Yıllar boyunca PowerShell üzerinde çalışıldı ve daha fazla cmdlet'i veya PowerShell komutunu destekleyecek şekilde yükseltildi ve çeşitli görevleri yönetebilecek kadar esnek olmasını sağladı. Microsoft, yalnızca Windows yazılımlarını ve hizmetlerini çalıştıran kuruluşlar için Windows Server, Azure Active Directory ve Exchange gibi hizmetlerini PowerShell kullanılarak yönetilebilecek şekilde geliştirmektedir. Bu, GUI tabanlı yapılandırma yöneticilerini kullanmak yerine hizmetlerin daha iyi kullanılmasıyla sonuçlanır ve bu da uzun vadede çok sayıda lojistik maliyetten tasarruf edilmesine yardımcı olur.
PowerShell'de yürütülebilecek eşdeğer CMD komutları
Bugün CMD için de PowerShell komut satırı kullanılarak yürütülebilecek bazı temel komutlardan bahsedeceğiz.
1] Komut satırında herhangi bir konuma gitmek istiyorsanız, bu gerçekten basittir. Komut İstemi'nde cd kullandığınız yerde şunları kullanabilirsiniz:
Set-Location "<PATH>"PowerShell'de de aynı şey için.
2] Bir dizin ağacında gezinmenize yardımcı olacaksa, bir klasörün tüm içeriğini listelemek hiç de önemli değil. Komut İstemi için dir kullandık, ancak PowerShell'i kullandığınızda yalnızca şunu kullanabilirsiniz:
Get-ChildItemBir dizinin içindeki tüm dosyaları ve dizinleri listelemek için.
3] Yeniden adlandırma, %100 GUI merkezli işletim sistemlerimizde doğal karşıladığımız bir şeydir. Ancak uzak bir sistemdeki bir dosyayı veya klasörü yeniden adlandırmak gerektiğinde, Komut İstemi'ni kullanırken yeniden adlandır komutuna güvenmek gerekiyordu ancak PowerShell'de bunu kullanabilirler
Rename-Item "Path/of/the/file.txt" - NewName "NewNameOfTheFile.csv"Bunu kullanarak, kullanıcı belirli bir dosyanın adının yanı sıra uzantısını da değiştirebilir.
4] Bir komut biliyorsanız ve neyle ilgili olduğundan emin değilseniz, /? Komut İstemi komut satırındaki komut eskiden çok yardımcı oluyordu. Neyse ki PowerShell'de bu özellik bulunmuyor. Kullanabilirsiniz
Get-Help "CMDLET NAME"PowerShell'deki bir CMDLET'in ne yaptığını kontrol etmek için.
5] Çalışan bir işlemi durdurmak için bile PowerShell'iniz olduğunda bazı Görev Yöneticisi türlerine güvenmeniz gerekmez. taskkillKomut İstemi'nde güvenilir bir komuttur ancak PowerShell ile şunları kullanabilirsiniz:
Stop-Process -Name "ApplicationName.exe"
6] Tartışacağımız bu komut, şahsen Okullarda çok sık kullanıldığını gördüğüm bir komuttur. Çok kullanışlı bir komuttur. Uzak bir bilgisayarı veya sunucu oturumunu kapatmak için kullanılabilir. Komut İsteminde shutdown -s kullanılabilir ancak PowerShell için,
Stop-Computer -ComputerName "HostName1","HostName2","Gateway or Address"uzaktaki bir bilgisayarı kapatmak için kullanılabilir.
7] Bir bilgisayarı kapatmaya benzer şekilde, Komut İstemi komutu shutdown -r,
Restart-Computer -ComputerName "HostNameNew", Gateway or Address"Aynı şeyi yapmak için PowerShell ile birlikte kullanılabilir.
8] Bir Sistemin Grup İlkesinde bazı yeni değişiklikler yapılırsa ve değişiklikleri görmek için, Komut İsteminde gpupdate /force kullanılan Grup İlkesini zorla yenilemeniz gerekir. Ancak PowerShell'de kullanılabilir
Invoke-GPUpdate -Computer "Name of the Host" -Forcekusursuzca kullanılabilir.
9] Değişkenleri ayarlamak için Komut İstemi komut satırında şunu kullanabilirsiniz:
SET VariableName = "Value of the Variable", ancak PowerShell'de $her şeyi halleder. Gereksinimi yapmak için bu komutu kullanabilirsiniz,
$VariableName="Value of the Variable".10] Bir bilgisayarı bir etki alanına bağlamak istiyorsanız, bu da oldukça basittir. Komut İsteminde şu komut kullanılabilir:
netdom /domain:domainName /user:userName /password:passwordForTheDomain member hostname /addancak PowerShell'i kullandığınızda, aşağıdakilerin kullanımından yararlanabilirsiniz:
Add-Computer -DomainName "Domain" -Credential "Domain\Username" -Restart
Dikkatli gözlemlersek temel Komut İstemi komutları PowerShell ile benzer şekilde çalıştırıldığında biraz karmaşık hale geliyor. Ancak hem Komut İstemi'nde hem de PowerShell'de kullandığımız Etki Alanı birleştirme komutu gibi karmaşık komutlardan bahsettiğimizde ve gözlemlediğimizde Komut İstemi'nde kullanılanın PowerShell'deki karşılığına göre çok daha karmaşık olduğunu görüyoruz.
Dolayısıyla PowerShell'in Komut İstemi karşılığı üzerinden uygulanmasının daha iyi olduğunu söyleyebiliriz. Bu aynı zamanda diğer platformlarda ve ortamlarda da mevcut olmasını da içermektedir.
Microsoft'un PowerShell'i Komut İstemi'nden daha iyi hale getirmek için daha agresif bir şekilde çalışacağına ve kullanıcıları Komut İstemi'ni onunla değiştirmeye zorlamayacağına inanıyoruz.


