Aracılığıyla paylaş


PowerShell Geliştirme için Visual Studio Code kullanma

Visual Studio Code (VS Code), Microsoft tarafından geliştirilen çok platformlu bir kod editörüdür. PowerShell uzantısıyla birlikte zengin ve etkileşimli bir betik düzenleme deneyimi sağlayarak güvenilir PowerShell betikleri yazmayı kolaylaştırır. PowerShell uzantısına sahip Visual Studio Code, PowerShell betikleri yazmak için önerilen düzenleyicidir.

Aşağıdaki PowerShell sürümlerini destekler:

  • PowerShell 7.2 ve üzeri (Windows, macOS ve Linux)
  • .NET Framework 4.8 ile Windows PowerShell 5.1 (yalnızca Windows)

Not

Visual Studio Code, Visual Studioile aynı değildir.

Başlarken

Başlamadan önce PowerShell'in sisteminizde mevcut olduğundan emin olun. Windows, macOS ve Linux'taki modern iş yükleri için aşağıdaki bağlantılara bakın:

Geleneksel Windows PowerShell iş yükleri için bkz. Windows PowerShell Yükleme.

Önemli

Windows PowerShell ISE Windows için hala kullanılabilir. Ancak artık etkin özellik geliştirme aşamasında değildir. ISE yalnızca PowerShell 5.1 ve üzeri ile çalışır. Windows'un bir bileşeni olarak, güvenlik ve yüksek öncelikli bakım düzeltmeleri için resmi olarak desteklenmeye devam eder. ISE'yi Windows'tan kaldırmayı planlamıyoruz.

VS Code ve PowerShell Uzantısını Yükleme

  1. Visual Studio Code'u yükleyin. Daha fazla bilgi için bkz. Visual Studio Codeayarlama genel bakış.

    Her platform için yükleme yönergeleri vardır:

  2. PowerShell Uzantısı'nı yükleyin.

    1. Konsol üzerinden code yazarak VS Code uygulamasını veya Visual Studio Code Insiders yüklediyseniz code-insiders yazarak başlatın.
    2. Ctrl+tuşlarına basarak Windows veya Linux üzerinde Hızlı Açma başlatın. macOS'ta Cmd+Ptuşlarına basın.
    3. Hızlı Aç'ta ext install powershell yazın ve ardındanEnter tuşuna basın.
    4. Uzantıları görünümü Yan Çubukta açılır. Microsoft'tan PowerShell uzantısını seçin.
    5. Microsoft'un PowerShell uzantısında Yükle düğmesine tıklayın.
    6. Yüklemeden sonra Yükle düğmesinin Yeniden Yükleolarak değiştiğini görüyorsanız, Yeniden Yükle'e tıklayın.
    7. VS Code yeniden yüklendikten sonra düzenlemeye hazır olursunuz.

Örneğin, yeni bir dosya oluşturmak için Dosya > Yeni öğesine tıklayın. Kaydetmek için Dosya > Kaydet'e tıklayın ve HelloWorld.ps1gibi bir dosya adı sağlayın. Dosyayı kapatmak için dosya adının yanındaki X tıklayın. VS Code'dan çıkmak için Dosya > Çık.

PowerShell Uzantısını Kısıtlı Sistemlere Yükleme

Bazı sistemler tüm kod imzalarının doğrulanması için ayarlanır. Aşağıdaki hatayı alabilirsiniz:

Language server startup failed.

PowerShell'in yürütme ilkesi Windows Grup İlkesi tarafından ayarlandığında bu sorun oluşabilir. PowerShell Düzenleyici Hizmetleri'ni ve VS Code için PowerShell uzantısını el ile onaylamak için bir PowerShell istemi açın ve aşağıdaki komutu çalıştırın:

Import-Module $HOME\.vscode\extensions\ms-vscode.powershell*\modules\PowerShellEditorServices\PowerShellEditorServices.psd1

Ardından VS Code'ı açın ve PowerShell uzantısının düzgün çalıştığını doğrulayın. Başlarken hâlâ sorun yaşıyorsanız, lütfen GitHub sorunundabize bildirin.

Uzantıyla kullanılacak PowerShell sürümünü seçme

PowerShell, Windows PowerShell ile yan yana yüklenirken artık PowerShell uzantısıyla PowerShell'in belirli bir sürümünü kullanmak mümkündür. Bu özellik, PowerShell yüklemelerini bulmak için farklı işletim sistemlerindeki birkaç iyi bilinen yola bakar.

Sürümü seçmek için aşağıdaki adımları kullanın:

  1. Ctrl++ile Windows veya Linux üzerinde Komut Paleti açın. macOS'ta Cmd+Shift+Pkullanın.
  2. Oturumiçin arama yapın.
  3. PowerShell' e tıklayın: Oturum Menüsünü Göster.
  4. Listeden kullanmak istediğiniz PowerShell sürümünü seçin.

PowerShell'i tipik olmayan bir konuma yüklediyseniz, başlangıçta Oturum Menüsünde gösterilmeyebilir. Oturum menüsünü, aşağıda açıklandığı gibi kendi özel yollarınızı ekleyerek genişletebilirsiniz.

PowerShell oturum menüsüne, durum çubuğunun sağ alt köşesindeki {} simgesinden de erişilebilir. Üzerine gelindiğinde veya bu simgeyi seçtiğinizde oturum menüsünün kısayolu ve küçük bir raptiye simgesi görüntülenir. Sabitleme simgesini seçerseniz, sürüm numarası durum çubuğuna eklenir. Sürüm numarası, daha az tıklama gerektiren oturum menüsünün kısayoludur.

Not

Sürüm numarasını sabitlemek, uzantının davranışını 1.65'ten önceki VS Code sürümlerinde yeniden üretir. VS Code'un 1.65 sürümü, PowerShell uzantısının kullandığı API'leri değiştirdi ve dil uzantıları için durum çubuğunu standartlaştırmıştı.

Visual Studio Code için yapılandırma ayarları

İlk olarak, VS Code'da ayarların nasıl değiştirileceğini bilmiyorsanız, Visual Studio Code'un ayar dokümantasyonu okumanızı öneririz.

Belgeleri okuduktan sonra settings.json'de yapılandırma ayarları ekleyebilirsiniz.

{
    "editor.renderWhitespace": "all",
    "editor.renderControlCharacters": true,
    "files.trimTrailingWhitespace": true,
    "files.encoding": "utf8bom",
    "files.autoGuessEncoding": true
}

Bu ayarların tüm dosya türlerini etkilemesini istemiyorsanız VS Code, dil başına yapılandırmalara da izin verir. Ayarları bir [<language-name>] alanına yerleştirerek dile özgü bir ayar oluşturun. Mesela:

{
    "[powershell]": {
        "files.encoding": "utf8bom",
        "files.autoGuessEncoding": true
    }
}

Bahşiş

VS Code'da dosya kodlama hakkında daha fazla bilgi için bkz. Dosya kodlamasını anlama. Ayrıca, PowerShell düzenleme için VS Code'u nasıl yapılandıracağınız konusunda diğer ipuçları için VS Code'da ISE deneyimini yeniden oluşturma hakkında ve’e göz atın.

Oturum menüsüne kendi PowerShell yollarınızı ekleme

Visual Studio Code ayarı: powershell.powerShellAdditionalExePathsaracılığıyla oturum menüsüne diğer PowerShell yürütülebilir yollarını ekleyebilirsiniz.

Gui kullanarak bunu yapabilirsiniz:

  1. Komut Paleti'ndenKullanıcı Ayarlarını Açöğesini arayın ve seçin. Veya Windows veya Linux'ta klavye kısayolunu Ctrl+kullanın. macOS'ta Cmd+kullanın.
  2. Ayarlar düzenleyicisinde PowerShell Ek Exe Yollarıarayın.
  3. Öğe Ekletıklayın.
  4. Anahtarı için (Öğealtında), bu ek PowerShell yüklemesi için seçtiğiniz adı belirtin.
  5. Değer için (Değeraltında), yürütülebilir dosyanın kendisine mutlak yolu sağlayın.

İstediğiniz kadar ek yol ekleyebilirsiniz. Eklenen öğeler oturum menüsünde, ad olarak verilen anahtarla gösterilir.

Alternatif olarak, powershell.powerShellAdditionalExePaths'deki nesne settings.json'a anahtar-değer çiftleri ekleyebilirsiniz:

{
    "powershell.powerShellAdditionalExePaths": {
        "Downloaded PowerShell": "C:/Users/username/Downloads/PowerShell/pwsh.exe",
        "Built PowerShell": "C:/Users/username/src/PowerShell/src/powershell-win-core/bin/Debug/net6.0/win7-x64/publish/pwsh.exe"
    },
}

Not

Uzantının 2022.5.0 sürümünden önce, bu ayar exePath ve versionNamegerekli anahtarlara sahip nesnelerin listesiydi. GUI aracılığıyla yapılandırmayı desteklemek için hataya neden olan bir değişiklik yapıldı. Bu ayarı daha önce yapılandırdıysanız lütfen yeni biçime dönüştürün. versionName için verilen değer artık Anahtarıve exePath için verilen değer artık Değeridir. Değeri sıfırlayarak ve Ayarlar arabirimini kullanarak bunu daha kolay yapabilirsiniz.

Varsayılan PowerShell sürümünü ayarlamak için, powershell.powerShellDefaultVersion değerini oturum menüsünde görüntülenen metne (anahtar için kullanılan metin) ayarlayın:

{
    "powershell.powerShellAdditionalExePaths": {
        "Downloaded PowerShell": "C:/Users/username/Downloads/PowerShell/pwsh.exe",
    },
    "powershell.powerShellDefaultVersion": "Downloaded PowerShell",
}

Bu ayarı yapılandırdıktan sonra VS Code'ı yeniden başlatın veya Komut Paletigeçerli VS Code penceresini yeniden yüklemek için Developer: Reload Windowyazın.

Oturum menüsünü açarsanız ek PowerShell yüklemelerinizi görürsünüz.

Bahşiş

PowerShell'i kaynaktan derlediyseniz bu, yerel PowerShell derlemenizi test etmenin harika bir yoludur.

Visual Studio Code ile hata ayıklama

Çalışma alansız hata ayıklama

VS Code sürüm 1.9'da (veya üzeri), PowerShell betiğini içeren klasörü açmadan PowerShell betiklerinde hata ayıklayabilirsiniz.

  1. Dosya ile PowerShell betik dosyasını açın > Dosyayı Aç...
  2. Kesme noktası ayarlama - bir satır seçin ve F9 basın
  3. Hata ayıklamayı başlatmak için F5 tuşuna basın

Hata ayıklayıcıya geçmenize, adım atmanıza, devam etmenize ve hata ayıklamayı durdurmanıza olanak tanıyan Hata ayıklama eylemleri bölmesinin açıldığını görmelisiniz.

Çalışma alanı hata ayıklama

Çalışma alanı hata ayıklaması, Dosya menüsünden klasör Klasör Aç...kullanarak açtığınız bir klasör bağlamında hata ayıklamayı ifade eder. Açtığınız klasör genellikle PowerShell proje klasörünüz veya Git deponuzun köküdür. Çalışma alanı hata ayıklama, yalnızca açık olan dosyada hata ayıklama dışında birden çok hata ayıklama yapılandırması tanımlamanızı sağlar.

Hata ayıklama yapılandırma dosyası oluşturmak için şu adımları izleyin:

  1. Ctrl++tuşlarına basarak Windows veya Linux'ta Hata Ayıklama görünümünü açın. macOS'ta Cmd+Shift+Dtuşlarına basın.

  2. launch.json dosyası oluştur bağlantısına tıklayın.

  3. Ortam Seç isteminden PowerShellseçin.

  4. Kullanmak istediğiniz hata ayıklama türünü seçin:

    • Geçerli Dosyayı Başlat - Şu anda etkin olan düzenleyici penceresinde dosyayı başlatma ve hata ayıklama
    • Betiği Başlat - Belirtilen dosya veya komutu başlat ve hata ayıkla
    • Etkileşimli Oturum - Tümleşik Konsoldan yürütülen komutlarda hata ayıklama
    • Ekle - Hata ayıklayıcıyı çalışmakta olan bir PowerShell Ana Bilgisayar İşlemine ekle

VS Code, hata ayıklama yapılandırmasını depolamak için çalışma alanı klasörünüzün kökünde bir dizin ve dosya .vscode\launch.json oluşturur. Dosyalarınız bir Git deposundaysa, genellikle launch.json dosyasını işlemek istersiniz. launch.json dosyasının içeriği şunlardır:

{
  "version": "0.2.0",
  "configurations": [
      {
          "type": "PowerShell",
          "request": "launch",
          "name": "PowerShell Launch (current file)",
          "script": "${file}",
          "args": [],
          "cwd": "${file}"
      },
      {
          "type": "PowerShell",
          "request": "attach",
          "name": "PowerShell Attach to Host Process",
          "processId": "${command.PickPSHostProcess}",
          "runspaceId": 1
      },
      {
          "type": "PowerShell",
          "request": "launch",
          "name": "PowerShell Interactive Session",
          "cwd": "${workspaceRoot}"
      }
  ]
}

Bu dosya yaygın hata ayıklama senaryolarını temsil eder. Bu dosyayı düzenleyicide açtığınızda, yapılandırma ekle... bir düğme görürsünüz. Daha fazla PowerShell hata ayıklama yapılandırması eklemek için bu düğmeye tıklayabilirsiniz. Ekleyebileceğiniz kullanışlı yapılandırmalardan biri PowerShell'dir: Betik Başlatma. Bu yapılandırmayla, düzenleyicide hangi dosya etkin olursa olsun F5 her bastığınızda kullanılan isteğe bağlı bağımsız değişkenler içeren bir dosya belirtebilirsiniz.

Hata ayıklama yapılandırması oluşturulduktan sonra, hata ayıklama oturumu sırasında kullanmak istediğiniz yapılandırmayı seçebilirsiniz. Hata Ayıklama görünümünün araç çubuğundaki hata ayıklama yapılandırmaları açılır listesinden bir yapılandırma seçin.

PowerShell uzantısı sorunlarını giderme

PowerShell betiği geliştirme için VS Code kullanırken sorun yaşıyorsanız GitHub'da sorun giderme kılavuzuna bakın.

Yararlı kaynaklar

VS Code için PowerShell uzantısını kullanmaya başlamanıza yardımcı olabilecek birkaç video ve blog gönderisi vardır:

Videolar

Blog gönderileri

PowerShell uzantısı proje kaynak kodu

PowerShell uzantısının kaynak kodu GitHubbulunabilir.

Katkıda bulunmak istiyorsanız, Pull Request'lerinizden çok memnun oluruz. GitHub'daki geliştirici belgelerini takip ederek başlayın.