Aracılığıyla paylaş


Komut satırında sekme tamamlamayı kullanma

PowerShell, ipuçları sağlamak, keşfetmeyi etkinleştirmek ve giriş hızını artırmak için tamamlamalar sağlar. Komut adları, parametre adları, bağımsız değişken değerleri ve dosya yollarının tümü Sekme tuşuna basılarak tamamlanabilir.

Tab anahtarı, Windows varsayılan anahtar bağlamadır. PSReadLine ayrıca Çubuğu'na bağlı bir işlev de sağlar. işlevi, komut satırının altında eşleşen tamamlamaların listesini görüntüler.

Tuş bağlamaları PSReadLine cmdlet'leri veya PowerShell barındıran uygulama kullanılarak değiştirilebilir. Anahtar bağlamalar Windows olmayan platformlarda farklı olabilir. Daha fazla bilgi için bkz. about_PSReadLine_Functions.

Yerleşik sekme tamamlama özellikleri

PowerShell, komut satırı deneyiminin birçok yönü için sekme tamamlamayı etkinleştirir.

Dosya adı tamamlama

Kullanılabilir seçeneklerden bir dosya adını veya yolu otomatik olarak doldurmak için, adın bir bölümünü yazın ve Sekme tuşuna basın. PowerShell, adı otomatik olarak bulduğu ilk eşleşmeye genişletir. Sekmesi tuşuna tekrar basıldığında, her basışta tüm kullanılabilir seçenekler arasında döngü yapar.

Komut ve parametre adı tamamlama

Cmdlet adlarının sekme genişletmesi biraz farklıdır. Bir cmdlet adında sekme genişletmeyi kullanmak için, adın ilk kısmının tamamını (fiil) ve ardından gelen kısa çizgiyi yazın. Kısmi eşleşme için isim kısmını daha fazla doldurabilirsiniz. ** Örneğin, "" yazıp Sekme tuşuna basarsanız, PowerShell yazdığınız komutu cmdlet karşılığına otomatik olarak genişletir (harflerin büyük/küçük harflerini de standart formlarına değiştirdiğini unutmayın). Sekme tuşuna yeniden basarsanız, PowerShell bunu bir sonraki eşleşen cmdlet'iyle değiştirir. Sekme tamamlama, PowerShell diğer adlarını ve yerel yürütülebilir dosyaları çözümlemek için de çalışır.

Aşağıdaki grafikte sekme ve menü tamamlama örnekleri gösterilmektedir.

Sekmesi ve menü tamamlama örnekleri

Diğer sekme tamamlama geliştirmeleri

PowerShell'in her yeni sürümü, hataları düzelten ve kullanılabilirliği geliştiren sekme tamamlama iyileştirmeleri içerir.

PowerShell 7.0

  • Sekme tamamlama, enum veya türü kısıtlanmış değişken atamalarını tamamlar
  • Sekme tamamlama, kısaltılmış cmdlet'leri ve işlevleri genişletir. Örneğin, döndürür

PowerShell 7.2

  • Konumlanmamış makaleler için sekme tamamlamayı düzeltme
  • Tamamlamalarda konumsal parametre olarak ele alınan sıçrama düzeltildi
  • Açıklama tabanlı Yardım anahtar sözcükleri için tamamlamalar ekleme
  • deyimleri için tamamlama ekleyin
  • cmdlet'lerinin parametresi için sekme tamamlama ekleyin
  • Sınıf tabanlı bağımsız değişken tamlayıcıları için destek ekleme

PowerShell 7.3

  • için belirtilen betik bloğu içinde sekme tamamlamayı düzelt.
  • ve 'den sonra döngü etiketleri için sekme tamamlaması eklendi
  • Birden çok senaryoda Hashtable tamamlama işlevini geliştirme
    • Parametre sıçraması
    • Bağımsız değişkenler parametresi için
    • FilterHashtable parametresi için
    • CIM cmdlet'leri için özellik parametresi
    • Üye tamamlama senaryolarından yinelenenleri kaldırır
  • Ağ paylaşımı (UNC yolu) tamamlamada eğik çizgileri destekleme
  • Üye otomatik tamamlamasını geliştir
  • Parametreler için sabitler yerine tamamlamalarına öncelik verin.
  • Tür parametreleriyle genel yöntemler için tür çıkarımı desteği ekleme
  • Tür çıkarımı ve tamamlamalarını geliştirme
    • için yöntemlerin tamamlama sonuçlarında gösterilmesine izin verir.
    • () gibi döndüren ifadelerin tamamlanmasını engeller
    • AST'ye dayalı sınıf tamamlama gerçekleştiğinde, varsayılan olmayan sınıf oluşturucularının görünmesine izin verir.

Komut parametrelerinin sekme tamamlamasını geliştirmenin diğer yolları

Yerleşik sekme genişletme, TabExpansion veya TabExpansion2iç işlev tarafından denetlenmektedir. Bu işlevlerin varsayılan davranışının yerini alan işlevler veya modüller oluşturmak mümkündür. TabExpansion anahtar sözcüğünü arayarak PowerShell Galerisi örnekler bulabilirsiniz.

parametrelerle veya özniteliklerini kullanma

özniteliği, belirli bir parametreye sekme tamamlama değerleri eklemenize olanak tanır. özniteliği benzer. Her iki öznitelik de kullanıcı parametre adından sonra sekme bastığında sunulacak değerlerin listesini alır. Ancak, aksine değerler doğrulanmaz.

Daha fazla bilgi için bkz:

  • ArgümanTamamlamaları
  • ValidateSet

parametrelerle özniteliğini veya kullanma

Bağımsız değişken tamamlayıcı, parametre değerleri için dinamik sekme tamamlama sağlayan bir betik bloğu veya işlevidir.

özniteliği, parametresi için sekme tamamlama değerleri sağlayan bir işlev kaydetmenizi sağlar. Argüman tamamlama işlevi, özniteliğine sahip parametreyi içeren işlevin erişimine açık olmalıdır. İşlev genellikle aynı betikte veya modülde tanımlanır. Daha fazla bilgi için bkz: ArgumentCompleter .

cmdlet'i, belirttiğiniz herhangi bir komut için çalışma zamanı sırasında bir betik bloğunu bağımsız değişken tamamlama işlevi olarak kaydeder. komutunu kullanmak, betiğin veya modülün dışında veya yerel komutlar için bağımsız değişken tamamlayıcıları tanımlamanızı sağlar. Daha fazla bilgi için bkz. Register-ArgumentCompleter.

PSReadLine'da Tahmine Dayalı İntelliSense

PSReadLine 2.1.0, Tahmine Dayalı IntelliSense özelliğini kullanıma sunar. Tahmine dayalı IntelliSense, PSReadLine geçmişinizdeki öğeleri temel alan tam komutlar için öneriler sağlar.

PSReadLine 2.2.2, tam komut önerileri sağlamak üzere gelişmiş mantık kullanan eklenti modülleri için destek ekleyerek Tahmine Dayalı IntelliSense'in gücünü genişletir. Az.Tools.Predictor modülü, Tahmine Dayalı IntelliSense'in ilk eklentisiydi. Çalıştırmak istediğiniz Azure PowerShell komutunu ve kullanmak istediğiniz parametreleri tahmin etmek için Machine Learning kullanır.

Tahmin önerileri sekme tamamlama önerileri değildir. Bunlar farklı bir kaynaktan oluşturulur. Varsayılan olarak, tahmin önerileri imlecin ardından gri metinde görünür. Öneriyi kabul etmek için RightArrow tuşunu kullanın. Bunun yerine Sekme tuşuna bastığınızda öneri yoksayılır ve bir sonraki sekme tamamlama seçeneği sunulur.

Daha fazla bilgi için bkz. Tahminleri kullanma.