Anasayfa » nasıl » Geek Okulu PowerShell'de Cmdlet'leri Kullanmayı Öğrenme

    Geek Okulu PowerShell'de Cmdlet'leri Kullanmayı Öğrenme

    İpconfig kullandıysanız veya komut istemine ping attıysanız, bir PowerShell ninja olmaya yarı yoldasınız. Öyleyse gelin ve Geek Okulu'nun bu kurulumunda cmdlet'leri keşfederken bize katılın.

    PowerShell'i tanıtan ilk makalemize göz attığınızdan ve tüm hafta boyunca dizimizin geri kalanı için bizi izlemeye devam ettiğinizden emin olun..

    Bir Cmdlet'in Anatomisi

    Serinin ilk bölümünde şöyle görünen bir cmdlet gördük:

    Güncelleme-Yardım

    PowerShell cmdlet'leri yukarıda görülebilen bir Fiil-İsim sözdizimine sahiptir. Unutulmaması gereken önemli şey, cmdlet birden fazla sonuç alabilse de, ismin her zaman tekil olduğu. PowerShell'deki yasal fiillerin listesini görmek için Get-Verb cmdlet'ini kullanabilirsiniz..

    Yasal fiilleri bilmek ve tekil isim kuralını hatırlamak, cmdlet adlarını tahmin etmeye gerçekten yardımcı olur. Örneğin, istediğinizi varsayalım almak bir listesi Hizmetler ve durumları - bu doğru, Get-Service kadar kolay. Nasıl yapacağımızı düşünüyorsun almak koşu listesi süreçler - bu doğru, al-işlem hile yapacak.

    Get-Process

    Bu, herhangi bir teknolojiyle çalışmayı gerçekten kolaylaştırır. Örneğin, Exchange cmdlet'lerini yüklediyseniz, aşağıdakileri kullanarak sunucudaki posta kutularının listesini kolayca alabiliriz:

    Get-Mailbox

    Ancak, bir istisna var. Kenara değişim, diğer tüm teknoloji komutları bir önek gerektirir. Örneğin, şu anda Uzak Masaüstü aracılığıyla oturum açmış olan kullanıcıları almak istiyorsak aşağıdakileri yazarız:

    Get-RDUserSession

    Aşağıdaki ekran görüntüsünde görülebilir.

    Not: Bu ekran görüntüsü, teknolojiye özel modüllerin çoğunu bulacağınız yer olan bir Server 2012 kutusunda çekilmiştir..

    Bir süre önce, PowerShell Godfather Don Jones'un, Exchange'in bu ön ekin cmdlet'lere eklenmeden önce gönderildiğini açıkladığı bir makale okudum, bu yüzden bunları asla uygulayamadı ve asla.

    Takma adlar

    PowerShell'in bir diğer özelliği de aynı komutu çalıştırmak için birden fazla yol kullanma yeteneğidir - eğer öyleyseniz. Onlarla ilgili harika şey, komut isteminde kullandığınız birçok komutu ve bazı Linux diğer adlarını içermeleridir. Örneğin, PowerShell'de aşağıdakileri kullanarak bir dizin listesi alabiliriz:

    Get-ChildItem

    Komut istemini kullanmak için kullanılır? Endişelenme, seni korudular.

    Linux geçmişiniz var mı? Orada da seni korudular.

    Birkaç yıl boyunca komut dosyası yazarken, tembel olma ve takma adları çok kullanmaya başlamaya eğilimlisiniz, ancak bu, kodumuzu okuyacak yeni gelenlere yardımcı olmaz. Bir takma adın kaputun altında çalıştığını görmek için aşağıdakileri kullanabilirsiniz:

    Al-Takma Ad-ls

    Öte yandan, oyununuzu hızlandırmanın zamanının geldiğini düşünüyorsanız, cmdlet'in tüm diğer adlarını almak için tanım parametresini kullanabilirsiniz:

    Get-ChildItem -Açıklama Get-ChildItem

    Başka bir arka plandan geliyorsanız, aşağıdakileri yaparak kendi takma adlarınızı ekleyebilirsiniz:

    Yeni-Takma Ad-icanhazfilez -Değer Al-ChildItem

    Açıkçası, "icanhazfilez" ifadesini yeni takma adınızla ve Get-ChildItem ile değiştirerek, başlık altında çalışmasını istediğiniz cmdlet'i kullanmanız gerekir..

    Unutulmaması gereken bir şey, kabuğu kapattığınızda tanımladığınız tüm diğer adları kaybetmenizdir. Tanımlarını profil komut dosyasına ekleyerek bu sorunu çözebilirsin.

    Kesme parametreleri

    Windows PowerShell ayrıca belirsiz hale geldikleri noktaya kadar parametre isimlerini kısaltmanıza izin verir, yani PowerShell'in artık hangi parametreden bahsettiğinizi çözemediği noktaya kadar. Örneğin:

    Get-Service -Ad 'Apple Mobil Cihaz' -BilgisayarAdı localhost

    Aynıdır:

    Get-Service -Na 'Apple Mobil Cihaz' -Com localhost

    Eğer herhangi bir ihtimaliniz varsa, parametre adlarını çok belirsiz yaparsanız, bir hata ile karşılaşırsınız..

    Eski Komutlar

    Son olarak, bildiğiniz ve sevdiğiniz komutlar hala PowerShell'de çalışacak.

    ping www.google.com

    Sadece ping gibi eski uygulamaların bir dize çıktığını unutmayın ve bir PowerShell cmdlet'i kullanarak aynı şeyi yapmanın genellikle daha iyi bir yolu vardır..

    Uzun bir metin dizisi oluşturmak yerine, artık Geek School'un yarın baskısına göz atacağımız bir nesneyle kalıyoruz.