PowerShell 7.2'deki Yenilikler
PowerShell 7.2, .NET 6.0 üzerinde derlenen bir sonraki Uzun Süreli Hizmet (LTS) sürümüdür.
PowerShell 7.2 aşağıdaki özellikleri, güncelleştirmeleri ve hataya neden olan değişiklikleri içerir.
- En çok desteklenen Linux dağıtımları için yeni evrensel yükleyici paketleri
- Windows'ta Microsoft Update desteği
- 2 yeni deneysel özellik
- Geliştirilmiş yerel komut bağımsız değişkeni geçirme desteği
- ANSI FileInfo renk desteği
- Geliştirilmiş Sekme Tamamlamaları
- Tahmine Dayalı IntelliSense ile PSReadLine 2.1
- 7 deneysel özellik temele yükseltildi ve 1 kaldırıldı
- Gelecekteki iyileştirmeleri etkinleştirmek için DSC'yi PowerShell 7'den ayırma
- Kullanılabilirliği geliştirmek için birkaç hataya neden olan değişiklik
Değişikliklerin tam listesi için GitHub deposundaki Değişiklik Günlüğü'ne bakın.
Yükleme güncelleştirmeleri
Tercih ettiğiniz işletim sistemi için yükleme yönergelerini denetleyin:
Ayrıca PowerShell 7.2, Windows ve macOS'un ARM64 sürümlerini, Debian ve Ubuntu'nun ARM32 ve ARM64 sürümlerini destekler.
Desteklenen işletim sistemleri ve destek yaşam döngüsü hakkında güncel bilgiler için bkz . PowerShell Destek Yaşam Döngüsü.
Linux dağıtımları için yeni evrensel yükleme paketleri
Daha önce CentOS, RHEL, Debian ve Ubuntu'nun desteklenen her sürümü için ayrı yükleyici paketleri oluşturmuştuk. Evrensel yükleyici paketi sekiz farklı paketi tek bir pakette birleştirerek Linux'ta yüklemeyi daha basit hale getirir. Evrensel paket, hedef dağıtım için gerekli bağımlılıkları yükler ve PowerShell'in çalışmasını sağlamak için platforma özgü değişiklikleri oluşturur.
Windows için Microsoft Update desteği
PowerShell 7.2, Microsoft Update için destek ekler. Bu özelliği etkinleştirdiğinizde, ister İş için Windows Update, WSUS, SCCM ister Ayarlar'daki etkileşimli WU iletişim kutusu olsun, geleneksel Windows Update (WU) yönetim akışınızda en son PowerShell 7 güncelleştirmelerini alırsınız.
PowerShell 7.2 MSI paketi aşağıdaki komut satırı seçeneklerini içerir:
USE_MU
- Bu özelliğin iki olası değeri vardır:1
(varsayılan) - Microsoft Update veya WSUS aracılığıyla güncelleştirmeyi kabul eder0
- Microsoft Update veya WSUS aracılığıyla güncelleştirmeyi kabul etmeyin
ENABLE_MU
1
(varsayılan) - Microsoft Update'i Otomatik Güncelleştirmeler veya Windows Update'i kullanmayı kabul eder0
- Microsoft Update'i Otomatik Güncelleştirmeler veya Windows Update'i kullanmayı kabul etmeyin
Deneysel Özellikler
Aşağıdaki deneysel özellikler artık bu sürümdeki temel özelliklerdir:
Microsoft.PowerShell.Utility.PSImportPSDataFileSkipLimitCheck
- bkz. Import-PowerShellDataFileMicrosoft.PowerShell.Utility.PSManageBreakpointsInRunspace
PSAnsiRendering
- bkz. about_ANSI_TerminalsPSAnsiProgress
- bkz. about_ANSI_TerminalsPSCultureInvariantReplaceOperator
PSNotApplyErrorActionToStderr
PSUnixFileStat
Bu sürümde aşağıdaki deneysel özellik eklendi:
PSNativeCommandArgumentPassing - Bu deneysel özellik etkinleştirildiğinde PowerShell, yerel yürütülebilir dosyayı çağırırken bir dizeyi yeniden oluşturma mekanizmamız yerine StartProcessInfo nesnesinin ArgumentList özelliğini kullanır. Bu özellik çalışma zamanında davranışı seçmenize olanak tanıyan yeni bir otomatik değişken
$PSNativeCommandArgumentPassing
ekler.PSAnsiRenderingFileInfo - Dosya bilgilerinin ANSI renk özelleştirmesine izin verin.
PSLoadAssemblyFromNativeCode - Derlemenin yerel koddan yüklenmesine izin vermek için bir API'yi kullanıma sunar.
Deneysel Özellikler hakkında daha fazla bilgi için bkz . Deneysel Özellikleri Kullanma.
Geliştirilmiş Sekme Tamamlamaları
PowerShell 7.2, Sekme Tamamlama ile ilgili çeşitli geliştirmeler içerir. Bu değişiklikler hata düzeltmelerini ve kullanılabilirliği geliştirmeyi içerir.
- Konumlanmamış hakkında* konular için sekme tamamlamayı düzeltme (#15265) (Teşekkürler @MartinGC94)
- Tamamlamalarda konumsal parametre olarak kabul edilen sıçrama düzeltildi (#14623) (Teşekkürler @MartinGC94)
- Açıklama tabanlı yardım anahtar sözcükleri için tamamlama ekleme (#15337) (Teşekkürler @MartinGC94)
- Requires deyimleri için tamamlama ekleme (#14596) (Teşekkürler @MartinGC94)
- Format-* cmdlet'lerinin View parametresi için sekme tamamlama eklendi (#14513) (Teşekkürler @iSazonov)
PSReadLine 2.1 Tahmine Dayalı IntelliSense
PSReadLine 2.1, komut satırı tamamlamaya yönelik tahminler sağlamak için bir çerçeve oluşturan API'leri kullanıma sunar CommandPrediction
. API, kullanıcıların kullanıcının geçmişindeki eşleşen tahminlere göre tam komutları bulmasını, düzenlemesini ve yürütmesini sağlar.
Tahmine dayalı IntelliSense varsayılan olarak devre dışıdır. Tahminleri etkinleştirmek için aşağıdaki komutu çalıştırın:
Set-PSReadLineOption -PredictionSource History
Gelecekteki iyileştirmeleri etkinleştirmek için DSC'yi PowerShell 7'den ayırma
PSDesiredStateConfiguration modülü PowerShell 7.2 paketinden kaldırıldı ve artık PowerShell Galerisi yayımlandı. Bu, PSDesiredStateConfiguration modülünün PowerShell'den bağımsız olarak geliştirilmesini sağlar ve kullanıcılar ortamları için PowerShell ve PSDesiredStateConfiguration sürümlerini karıştırabilir ve eşleştirebilir. PSDesiredStateConfiguration 2.0.5'i PowerShell Galerisi yüklemek için:
Install-Module -Name PSDesiredStateConfiguration -Repository PSGallery -MaximumVersion 2.99
Önemli
MaximumVersion parametresini eklediğinizden emin olun veya önemli farklılıklar içeren PSDesireStateConfiguration'ın 3 (veya üzeri) sürümünü yükleyebilirsiniz.
Altyapı güncelleştirmeleri
- Bir yerel PowerShell konağından bellekteki derlemeleri uyandırma yoluyla yüklemek için işlev ekleme
LoadAssemblyFromNativeMemory
· Çekme İsteği #14652
Hataya Neden Olan Değişiklikler ve Geliştirmeler
- PSDesiredStateConfiguration, PowerShell 7.2 paketinden kaldırıldı
- PowerShell Linux deb ve RPM paketlerini evrensel hale getirme (#15109)
- Deneysel özellik
PSNativeCommandArgumentPassing
: Yerel yürütülebilir çağırma için ArgumentList kullanma (#14692) - Betik cmdlet'lerinden gelen tüm çıkışlar için ayarlandığından emin olun
-PipelineVariable
(#12766) - -Derinlik değerini aşarsa
ConvertTo-Json
uyarı yay (#13692) - -Directory anahtarının diğer D adını kaldırma CL-General #15171
- Değiştirilebilir değer türlerini algılamayı geliştirme (#12495)
- Kilitleme altında NoLanguage modunda kısıtla
New-Object
(#14140) - Yürütme İlkesi Atlama yapılandırması öncesinde AppLocker Reddetme yapılandırmasını zorunlu kılma (#15035)
- CodeProperty'denişaret eden
FileSystemInfo.LinkTarget
AliasPropertyolarak değiştirmeFileSystemInfo.Target
(#16165)
PowerShell
Geri Bildirim
https://aka.ms/ContentUserFeedback.
Çok yakında: 2024 boyunca, içerik için geri bildirim mekanizması olarak GitHub Sorunları’nı kullanımdan kaldıracak ve yeni bir geri bildirim sistemiyle değiştireceğiz. Daha fazla bilgi için bkz.Gönderin ve geri bildirimi görüntüleyin