Not
Bu sayfaya erişim yetkilendirme gerektiriyor. Oturum açmayı veya dizinleri değiştirmeyi deneyebilirsiniz.
Bu sayfaya erişim yetkilendirme gerektiriyor. Dizinleri değiştirmeyi deneyebilirsiniz.
PowerShell 7.4.7 aşağıdaki özellikleri, güncelleştirmeleri ve uyumsuzluk yaratan değişiklikleri içerir. PowerShell 7.4.7, .NET 8.0.12 üzerine kurulmuştur.
Değişikliklerin tam listesi için GitHub deposundaki CHANGELOG
Uyumsuzluk yaratan değişiklikler
- Nano sunucu docker görüntüleri bu sürümde kullanılamaz
- Common Parameters'a ProgressAction parametresi eklendi
- Bağımsız değişken boş bir dize olduğunda (#19215) ArgumentNullException yerine ArgumentException oluşturacak şekilde bazı PowerShell API'lerini güncelleştirin (Teşekkürler @xtqqczze!)
-
#Requires -PSSnapin
ile ilgili kodu kaldırma (#19320) -
Test-Json
artık Newtonsoft.Json.Schema yerine JsonSchema.NET kullanıyor.- Bu değişiklikle
Test-Json
artık eski Taslak 4 şemalarını desteklemez. (#18141) (teşekkürler @gregsdennis!). JSON şemaları hakkında daha fazla bilgi için JSON Şeması belgelerine bakın. Bu ayrıca, yorum içeren JSON ve JSONC dosyaları içinTest-Json
'ı bozar. -
ConvertFrom-Json
desteği hala Newtonsoft.Json.Schema kullanır, böylece JSON dosyalarını açıklamalarla dönüştürebilir.
- Bu değişiklikle
-
Test-Connection
çıktısı artık TCP bağlantı testleri hakkında daha ayrıntılı bilgi içeriyor - .NET,
Test-Connection
'ı etkileyen değişiklikleri tanıttı. Cmdlet artık özel bir arabellek boyutu (sudo
) kullanırken Linux platformlarında kullanma gereksinimiyle ilgili bir hata mesajı döndürüyor. - Deneysel özellik PSNativeCommandPreserveBytePipe artık ana akım haline geldi. PowerShell artık yerel bir komutun stdout akışını bir dosyaya yönlendirirken veya bayt akışı verilerini yerel komutun stdin akışına yönlendirirken bayt akışı verilerini korur.
-
Resolve-Path
parametresi (#19755) kullanılırken, göreli yolların nasıl işlendiğini değiştirme (Teşekkürler @MartinGC94!)) - Kullanılmayan PSv2 kodunu kaldır - TabExpansion işlevini kaldırır (#18337)
Yükleyici güncelleştirmeleri
Windows MSI paketi artık yükleme sırasında PowerShell telemetrisini devre dışı bırakma seçeneği sunar.
Daha fazla bilgi için bkz.komut satırından msi paketini yükleme
PSResourceGet ve PSReadLine'ın güncelleştirilmiş sürümleri
PowerShell 7.4, Microsoft.PowerShell.PSResourceGet v1.0.1'i içerir. Bu modül, PowerShellGet v2.2.5 ve PackageManagement v1.4.8.1 ile yan yana yüklenir. Daha fazla bilgi için Microsoft.PowerShell.PSResourceGetbelgelerine bakın.
PowerShell 7.4 artık PSReadLine v2.3.4'i içeriyor. Daha fazla bilgi için PSReadLinebelgelerine bakın.
Sekme tamamlama geliştirmeleri
Sekme tamamlanmasını iyileştirmeye yönelik tüm çalışmaları için @MartinGC94 ve diğerlerine büyük teşekkürler.
- Betikteki ilk komutu boş bir dizi ifadesiyle (#18355) tamamlarken oluşan sorun düzeltildi
- Konum bağımsız değişken tamamlamasını düzelt (#17796)
- Konumsal bağımsız değişkenleri tamamlarken varsayılan parametre kümesinin önceliğini belirleme (#18755)
- Dinamik parametreler için sahte bağlamayı geliştirme (#18030)
- Hash tablosu anahtarlarının tür çıkarımını iyileştirin (#17907)
- Boş dönüş ifadeleri için tür çıkarımı hatası düzeltilir (#18351)
- Get-Random için tür çıkarımı geliştirin (#18972)
- Tüm kapsam değişkenleri için tür çıkarımı düzeltilir (#18758)
- İşlem hattında çıkarılan türlerin listesini iyileştirin (#17799)
- Enum'ları karşılaştırırken, karşılaştırmalar için değer tamamlama ekleyin (#17654)
- Enumlar için özellik ataması tamamlaması eklemesi (#19178)
- PSCustomObject değişken özellikleri (#18682) için tamamlama düzeltmesi
- Öznitelik bağımsız değişkeninde üye tamamlamasını düzeltme (#17902)
- Gereksiz parametre takma adlarını tamamlama listelerinden dışla (#19382)
- Temel türleri (#19179) olan sınıflar için sınıf üyesi tamamlama düzeltmesi
-
using
anahtar sözcüğü için tamamlama ekleme (#16514) - Değişkenleri tamamlarken TabExpansion2 değişken sızıntısını düzeltme (#18763)
- ScriptBlock kapsamlarında değişkenlerin tamamlanmasını etkinleştirin (#19819)
- foreach deyimi değişkeninin (#19814) tamamlanması düzeltilir
- Değişken türü çıkarım önceliği düzeltme (#18691)
- PowerShell Enum sınıfı için üye tamamlamayı düzeltme (#19740)
- Yöntem çağrılarında dizin ifadelerindeki dizi literalleri için ayrıştırma düzeltildi (#19224)
- Yol Tamamlamayı Geliştirme (#19489)
- Boş betik girdisi için CompleteInput'taki dizin sınır hatasını düzeltin (#19501)
- Değişken tamamlama performansını geliştirme (#19595)
- Tür kısıtlı değişken atamaları, iç içe karma tablolar ve daha fazlası için karma tablo anahtar tamamlamasını geliştirme (#17660)
- Dış uygulama çıktısını dizge olarak yorumla (#19193)
-
ValidateRange
özellikleri tarafından izin verilmeyen değerleri dışlamak için enum parametre tamamlamasını güncelleyin (#17750) (Teşekkürler @fflaten!). - Dinamik parametre tamamlamayı düzeltme (#19510)
-
data
deyimi tarafından atanan değişkenler için tamamlamayı ekleyin (#19831) - Yerel komutlarla kullanımı bozabilecek durumları önlemek için, Windows sistemlerinde tilde (
~
) genişlemesini$HOME
olarak değiştirin (#21529).
Web cmdlet geliştirmeleri
Web cmdlet'lerini iyileştirmeye yönelik tüm çalışmalar için @CarloToso ve diğerleri için çok teşekkür ederiz.
- Web cmdlet'lerinde Brotli (#17955) içerecek şekilde sıkıştırmayı çözme (Teşekkürler @iSazonov!)
- Webcmdlet'ler 308'u yeniden yönlendirme kodlarına ve küçük temizlemeye ekler (#18536)
- İndirme tamamlandığında veya iptal edildiğinde Invoke-WebRequest ilerleme çubuğunun görüntülenmesini tamamlayın (#18130)
- Eğer durum kodu 429 (#18717) ise, yanıt başlıklarından Retry-After aralığı Web cmdlet'leri tarafından alınır.
- Web cmdlet'leri varsayılan karakter kümesi kodlamasını UTF8 (#18219) olarak ayarlar
- Değişikliklerden WebSession.MaximumRedirection öğesini koruyun (#19190)
- WebCmdlet'leri, varsa kodlama değerini almak için XML bildirimini ayrıştırıyor. (#18748)
- Xml -Body'nin webcmdlet'lerde kodlama olmadan kullanılmasını düzeltin (#19281)
- WebCmdlet'lerinde varsayılan içerik türü için PUT yöntemi davranışını POST olarak ayarlayın (#19152)
- WebCmdlet'lerdeki Başlıklardan ContentType'ı dikkate alın (#19227)
- Web cmdlet'lerine -PreserveHttpMethodOnRedirect ekleyerek özgün HTTP yöntemini korumaya izin ver (#18894)
- Webcmdlet'ler https'den http'ye yönlendirme (#18595) üzerinde bir hata görüntülüyor
- AllowInsecureRedirect Web cmdlet'lerine geçiş ekleme (#18546)
- İçerik uzunluğu bilinmediğinde web cmdlet'lerinde ayrıntılı iletiyi geliştirin (#19252)
-
Invoke-WebRequest
yanıttaki bağlantılar için göreli URI oluşturun (#19092) - WebCmdlet'lerinde
-CustomMethod POST
yeniden yönlendirmeyi düzeltin (#19111) - Önceki yanıtı Webcmdlet'lerde sil (#19117)
-
Invoke-WebRequest
xml ve json hataları biçimini geliştirin (#18837) - WebCmdlet'lerinin OutFile ve InFile parametrelerine ValidateNotNullOrEmpty ekleyin (#19044)
- HttpKnownHeaderNames üst bilgi listesini güncelle (#18947)
- virgül içeren bağlantıları
Invoke-RestMethod -FollowRelLink
düzeltme (#18829) - Web cmdlet'lerinde yeniden yönlendirmeyi ve KeepAuthorization'ı yönetme (#18902) ile ilgili hata düzeltildi
- StatusCode 'i HttpResponseException 'e ekle (#18842)
- Web Cmdlet'lerinde HTTP kalıcı bağlantılarını destekleme (#19249) (Teşekkürler @stevenebutler!)
- Küçük temizlik
Invoke-RestMethod
(#19490) - WebCmdlet'lerinin ayrıntılı iletisini doğru HTTP sürümünü gösterecek şekilde geliştirin (#19616)
- WebCmdlets içinde MultipartFileContent'e FileNameStar ekleyin (#19467)
- "Retry-After üst bilgisinden yeniden deneme aralığını almak için WebCmdlet'ler için HTTP durum kodunu 409'dan 429'a düzeltin." (#19622) (Teşekkürler @mkht!)
-
-TimeoutSec
-ConnectionTimeoutSeconds
olarak değiştirin ve web cmdlet'lerine (-OperationTimeoutSeconds
) ekleyin (Teşekkürler @stevenebutler!) Diğer cmdlet'ler - WebCmdlet'lerinde veri okunurken bağlantı kilitlendiğinde Ctrl+c tuşlarına basın (#19330) (Teşekkürler @stevenebutler!)
- WebCmdlet'lerinde Unix etki alanı yuvasını destekleme (#19343)
Diğer cmdlet iyileştirmeleri
-
Test-Connection
artık özel arabellek boyutu kullanırken Linux platformlarındasudo
kullanma gereksinimiyle ilgili hata döndürüyor (#20369) - Biçim komutlarına çıkış türleri ekleme (#18746) (Teşekkürler @MartinGC94!)
-
Get-WinEvent
(#17948) için çıkış türü öznitelikleri ekleme (Teşekkürler @MartinGC94!) -
Yol ve LiteralYol parametrelerini
Test-Json
cmdlet'ine (#19042) ekleyin (Teşekkürler @ArmaanMcleod!) -
ve
ConvertTo-Csv
cmdlet'lerine (Export-Csv
) NoHeader parametresi ekleyin (Teşekkürler @ArmaanMcleod!) -
Onayla ve WhatIf parametrelerini ekleyin
Stop-Transcript
(#18731) (Teşekkürler @JohnLBevan!) -
Get-Command
parametresini ekleyin (#18261) -
Kodlama parametresinin PowerShell'de
ANSI
kodlamayı alabilmesini sağla (Teşekkürler ) (@CarloToso!)) -
Copy-Item
ilerleme ekle (#18735) -
Update-Help
artık ABD dışı sistemlerde örtük kültür kullanılırken bir hata bildiriyor. (#17780) (Teşekkürler @dkaszews!) - Tamamlanmış bir ilerleme kaydı oluştururken etkinlik gerektirmeyin (#18474) (Teşekkürler @MartinGC94!)
-
Get-Content
ve-Head
(-Tail
) cmdlet parametreleri için negatif değerlere izin verme (Teşekkürler @CarloToso!) - Geçerli kültür bir dille ilişkilendirilmediğinde
Update-Help
'ın doğru bir hata oluşturması sağlanmalı (#19765) (Teşekkürler @josea!)) -
-Skip
ve-SkipLast
parametrelerininSelect-Object
cmdlet'inde birleştirilmesine izin verin. (#18849) (Teşekkürler @ArmaanMcleod!) -
Get-SecureRandom
cmdlet ekle (#19587) - Uzaktan kullanım için
Set-Clipboard -AsOSC52
(#18222) (Teşekkürler @dkaszews!) - Göreli yol çözümlemeyi
Resolve-Path
hızlandırın (#19171) (Teşekkürler @MartinGC94!)) -
-CaseInsensitive
parametresiSelect-Object
veGet-Unique
cmdlet'lerine eklendi (#19683) (Teşekkürler @ArmaanMcleod!)) - unix üzerinde sudo ile çalışmadığında
Restart-Computer
veStop-Computer
hatayla başarısız olmalıdır (#19824)
Motor geliştirmeleri
$PSStyle
güncelleştirmeleri
- Dim ve DimOff özelliklerini ekler (#18653)
- PSStyle sınıfına, ön plan ve arka plan ConsoleColor değerlerini ANSI kaçış dizileriyle eşleştiren statik yöntemler eklendi (#17938)
- Hesaplanmış alanlar için tablo üst bilgileri varsayılan olarak italik olarak biçimlendirilir
- Uzak ana bilgisayarda
$PSStyle.OutputRendering
'ya saygı gösterilmesini sağlama desteğini ekleyin (#19601) - Telemetri verileri,
CrescendoBuilt
modüllerinin kullanımını içerecek şekilde güncelleştirildi (#20371)
Diğer Altyapı güncelleştirmeleri
-
NoRunspaceAffinity
özniteliğini (#18138) bildirirken PowerShell sınıfının Runspace ile ilişkili olmamasını sağlayın -
ValidateNotNullOrWhiteSpace
özniteliğini ekleyin (#17191) (Teşekkürler @wmentha!) - Eski bağımsız değişken iletimi için listeye
sqlcmd
ekleyin (#18559) - İşlev
cd~
(#18308) ekleyin (Teşekkürler @GigaScratch!) - Genel türlerde (#19205) dizi türü ayrıştırma düzeltmesi (Teşekkürler @MartinGC94!)
- Cihaz yollarının kökünde joker karakterlerle globbing düzeltmesi (#19442) (Teşekkürler @MartinGC94!))
- PSModulePath öğelerinin konumlarını almak için genel API ekleme (#19422)
- Yanlış dizeyi tür dönüşümüne düzeltme (#19560) (Teşekkürler @MartinGC94!))
- Birçok kesme noktası kullanıldığında yavaş yürütmeyi düzeltme (#14953) (Teşekkürler @nohwnd!)
-
#Requires -PSSnapin
ile ilgili kodu kaldırma (#19320)
Deneysel Özellikler
PowerShell 7.4 aşağıdaki deneysel özellikleri sunar:
-
PSFeedbackProvider - Sabit kodlanmış öneri çerçevesini genişletilebilir bir geri bildirim sağlayıcısıyla değiştirir.
- Bu özellik, geri bildirim iletilerinin biçimlendirmesini değiştirmenize olanak sağlayan FeedbackName, FeedbackTextve FeedbackAction özelliklerini de
$PSStyle.Formatting
ekler.
- Bu özellik, geri bildirim iletilerinin biçimlendirmesini değiştirmenize olanak sağlayan FeedbackName, FeedbackTextve FeedbackAction özelliklerini de
- PSModuleAutoLoadSkipOfflineFiles - Modül bulma artık bulut sağlayıcıları tarafından diskte tam bulunmayan olarak işaretlenmiş dosyaları atlıyor.
- PSCommandWithArgs - Komutlara argümanları tek bir dize olarak geçirme desteği eklendi
Aşağıdaki deneysel özellikler temel bir hal aldı:
- PSConstrainedAuditLogging
- PSCustomTableHeaderLabelDecoration
- PSNativeCommandErrorActionPreference
- PSNativeCommandPreserveBytePipe
- PSWindowsNativeCommandArgPassing
PowerShell 7.4 aşağıdaki deneysel özellikleri değiştirdi:
- PSCommandNotFoundSuggestion - Bu özellik artık sabit kodlanmış öneriler yerine genişletilebilir bir geri bildirim sağlayıcısı kullanıyor (#18726)
Deneysel Özellikler hakkında daha fazla bilgi için bkz. Deneysel Özellikleri Kullanma.
PowerShell