Windows PowerShell Programcı Kılavuzu


Bu programcı kılavuzu, sistem yöneticileri için bir komut satırı yönetim ortamı sağlamakla ilgilenen geliştiricilere yöneliktir. Windows PowerShell, .NET nesnelerini açığa çıkaran yönetim komutları oluşturmanız için basit bir yol sağlarken, Windows PowerShell'in işin çoğunu sizin için yapmasına olanak tanır.

Geleneksel komut geliştirmede, bir parametre ayrıştırıcı, bir parametre bağlayıcı, filtreler ve her komutun sunduğu diğer tüm işlevleri yazmanız gerekir. Windows PowerShell, komut yazmanızı kolaylaştırmak için aşağıdakileri sağlar:

  • Kendi ayrıştırıcısına ve komut parametrelerini otomatik olarak bağlamaya yönelik bir mekanizmaya sahip güçlü bir Windows PowerShell çalışma zamanı (yürütme motoru).

  • Komut satırı yorumlayıcısını (CLI) kullanarak komut sonuçlarını biçimlendirmek ve görüntülemek için yardımcı programlar.

  • Depolanan verilere erişimi kolaylaştıran yüksek düzeyde işlevsellik desteği (Windows PowerShell sağlayıcıları aracılığıyla).

    Çok az bir maliyetle, bir .NET nesnesini zengin bir komutla veya yöneticiye eksiksiz bir komut satırı deneyimi sunacak komutlar dizisiyle temsil edebilirsiniz.

    Sonraki bölüm temel Windows PowerShell kavramlarını ve terimlerini kapsamaktadır. Geliştirmeye başlamadan önce bu kavram ve terimlere aşina olun.

Windows PowerShell hakkında

Windows PowerShell, geliştirmede kullanabileceğiniz çeşitli komut türlerini tanımlar. Bu komutlar şunları içerir: işlevler, filtreler, komut dosyaları, takma adlar ve yürütülebilir dosyalar (uygulamalar). Bu kılavuzda tartışılan ana komut türü "cmdlet" adı verilen basit, küçük bir komuttur. Windows PowerShell bir dizi cmdlet sağlar ve ortamınıza uyacak şekilde cmdlet özelleştirmesini tam olarak destekler. Windows PowerShell çalışma zamanı, işlem hatlarını kullanarak tüm komut türlerini cmdlet'ler gibi işler.

Komutlara ek olarak Windows PowerShell, belirli cmdlet kümelerini kullanılabilir hale getiren çeşitli özelleştirilebilir Windows PowerShell sağlayıcılarını destekler. Kabuk, Windows PowerShell tarafından sağlanan ana bilgisayar uygulaması (Windows PowerShell.exe) içinde çalışır, ancak belirli gereksinimleri karşılamak için geliştirebileceğiniz özel bir ana bilgisayar uygulamasından da aynı şekilde erişilebilir. Daha fazla bilgi için bkz. Windows PowerShell Nasıl Çalışır?

Windows PowerShell Cmdlet'leri

Cmdlet, Windows PowerShell ortamında kullanılan hafif bir komuttur. Windows PowerShell çalışma zamanı, bu cmdlet'leri komut satırında sağlanan otomasyon betikleri bağlamında çağırır ve Windows PowerShell çalışma zamanı da bunları Windows PowerShell API'leri aracılığıyla programlı olarak çağırır.

Cmdlet'ler hakkında daha fazla bilgi için bkz. Windows PowerShell Cmdlet'i yazma.

Windows PowerShell Sağlayıcıları

Yönetim görevlerini gerçekleştirirken kullanıcının bir veri deposunda (örneğin dosya sistemi, Windows Kayıt Defteri veya sertifika deposu) depolanan verileri incelemesi gerekebilir. Bu işlemleri kolaylaştırmak için Windows PowerShell, Windows Kayıt Defteri gibi belirli bir veri deposuna erişmek için kullanılabilecek, Windows PowerShell sağlayıcısı adı verilen bir modül tanımlar. Her sağlayıcı, kullanıcıya mağazadaki verilerin simetrik bir görünümünü sunmak için bir dizi ilgili cmdlet'i destekler.

Windows PowerShell birkaç varsayılan Windows PowerShell sağlayıcısı sağlar. Örneğin, Kayıt Defteri sağlayıcısı Windows Kayıt Defterinde gezinmeyi ve manipülasyonu destekler. Kayıt defteri anahtarları öğeler olarak temsil edilir ve kayıt defteri değerleri özellikler olarak değerlendirilir.

Kullanıcının erişmesi gereken bir veri deposunu açığa çıkarırsanız Windows PowerShell Sağlayıcıları Oluşturmabölümünde açıklandığı gibi kendi Windows PowerShell sağlayıcınızı yazmanız gerekebilir. Windows PowerShell sağlayıcıları hakkında daha fazla bilgi için bkz. Windows PowerShell Nasıl Çalışır?

Ana Bilgisayar Uygulaması

Windows PowerShell, kullanıcıyla etkileşim kuran ve bir konsol penceresi kullanarak Windows PowerShell çalışma zamanını barındıran bir konsol uygulaması olan varsayılan ana bilgisayar uygulaması powershell.exe'yi içerir.

Özelleştirme desteklense de nadiren Windows PowerShell için kendi ana bilgisayar uygulamanızı yazmanız gerekir. Kendi uygulamanıza ihtiyaç duyabileceğiniz bir durum, varsayılan ana bilgisayar uygulaması tarafından sağlanan arayüzden daha zengin bir GUI arayüzüne ihtiyaç duymanızdır. GUI'nizi komut satırına dayandırırken de özel bir uygulama isteyebilirsiniz. Daha fazla bilgi için bkz. Windows PowerShell Ana Bilgisayar Uygulaması Nasıl Oluşturulur.

Windows PowerShell Çalışma Zamanı

Windows PowerShell çalışma zamanı, komut işlemeyi uygulayan yürütme motorudur. Ana bilgisayar uygulaması ile Windows PowerShell komutları ve sağlayıcıları arasındaki arabirimi sağlayan sınıfları içerir. Windows PowerShell çalışma zamanı, kabuğun ve komutların yürütüldüğü işletim ortamı olan geçerli Windows PowerShell oturumu için bir çalışma alanı nesnesi olarak uygulanır. Operasyonel ayrıntılar için bkz. Windows PowerShell Nasıl Çalışır?

Windows PowerShell Dili

Windows PowerShell dili, komutları çağırmak için komut dosyası oluşturma işlevleri ve mekanizmaları sağlar. Komut dosyası oluşturma bilgilerinin tamamı için Windows PowerShell ile birlikte gönderilen Windows PowerShell Dil Başvurusu'na bakın.

Genişletilmiş Tip Sistem (ETS)

Windows PowerShell, .NET ve XML nesneleri gibi çeşitli farklı nesnelere erişim sağlar. Sonuç olarak, tüm nesne türleri için ortak bir soyutlama sunmak amacıyla kabuk, genişletilmiş tür sistemini (ETS) kullanır. ETS işlevlerinin çoğu kullanıcı için şeffaftır ancak komut dosyası veya .NET geliştiricisi bunu aşağıdaki amaçlarla kullanır:

  • Belirli nesnelerin üyelerinin bir alt kümesini görüntüleme. Windows PowerShell, çeşitli belirli nesne türlerinin "uyarlanmış" görünümünü sağlar.

  • Mevcut nesnelere üye ekleme.

  • Serileştirilmiş nesnelere erişim.

  • Özelleştirilmiş nesnelerin yazılması.

    ETS'yi kullanarak Windows PowerShell diliyle uyumlu, esnek yeni "türler" oluşturabilirsiniz. Bir .NET geliştiricisiyseniz, örneğin bir nesnenin true olarak değerlendirilip değerlendirilmediğini belirlemek için Windows PowerShell dilinin komut dosyalarına uyguladığı anlambilimin aynısını kullanarak nesnelerle çalışabilirsiniz.

    ETS ve Windows PowerShell'in nesneleri nasıl kullandığı hakkında daha fazla bilgi için bkz. Windows PowerShell Nesne Kavramları.

Windows PowerShell için Programlama

Windows PowerShell, .NET Framework'ü kullanan komutlar, sağlayıcılar ve diğer program modülleri için kodunu tanımlar. Bu kılavuzda sağlanan örneklerin bu araçta çalıştığı bilinmesine rağmen, Windows PowerShell için özelleştirilmiş modüller oluştururken Microsoft Visual Studio'yu kullanmakla sınırlı değilsiniz. Sınıf devralmayı ve özniteliklerin kullanımını destekleyen herhangi bir .NET dilini kullanabilirsiniz. Bazı durumlarda Windows PowerShell API'leri genel türlere erişebilmek için programlama dili gerektirir.

Programcının Referansı

Windows PowerShell için geliştirme yaparken referans olarak Windows PowerShell SDK'sına bakın.

Windows PowerShell'i Kullanmaya Başlarken

Windows PowerShell kabuğunu kullanmaya başlama hakkında daha fazla bilgi için Windows PowerShell ile birlikte gönderilen Windows PowerShell'i Kullanmaya Başlama belgesine bakın. Hızlı Referans üçe katlanmış bir belge de cmdlet kullanımı için bir başlangıç olarak sağlanır.

Bu Kılavuzun İçeriği

How to Create a Windows PowerShell Provider

Bu bölümde Windows PowerShell için bir Windows PowerShell sağlayıcısının nasıl oluşturulacağı açıklanmaktadır.

How to Create a Windows PowerShell Host Application

Bu bölümde, bir çalışma alanını yöneten bir ana bilgisayar uygulamasının nasıl yazılacağı ve kendi özel ana bilgisayarını uygulayan bir ana bilgisayar uygulamasının nasıl yazılacağı açıklanmaktadır.

How to Create a Windows PowerShell Snap-in

Bu bölümde, bir derlemedeki tüm cmdlet'leri ve sağlayıcıları kaydetmek için kullanılan bir ek bileşenin nasıl oluşturulacağı ve özel bir ek bileşenin nasıl oluşturulacağı açıklanmaktadır.

How to Create a Console Shell

Bu bölümde genişletilemeyen bir konsol kabuğunun nasıl oluşturulacağı açıklanmaktadır.

Windows PowerShell Concepts

Bu bölüm, Windows PowerShell'i bir geliştiricinin bakış açısından anlamanıza yardımcı olacak kavramsal bilgiler içerir.

Ayrıca Bakınız

Windows PowerShell SDK'sı

İlgili makaleler