PowerShell 7.0 / 7.1 dan .NET runtime
Microsoft Doc memiliki tabel untuk versi .NET Framework yang diperlukan untuk PowerShell versi 3.0 hingga 5.1: https://docs.microsoft.com/en-us/powershell/scripting/windows-powershell/install/windows-powershell-system- persyaratan? view = PowerShell-7 # microsoft-net-framework-requirement
Setelah menginstal PowerShell 7.0 pada instance Linux baru yang tidak memiliki PowerShell atau .NET, saya perhatikan bahwa cmdlet PS berfungsi normal. Ketika saya melihat runtime .NET, tidak ada yang terdaftar. Ketika saya menjalankan $ PSVersionTable , CLR tidak terdaftar, sebagai gantinya:
PS /home/ubuntu> $PSVersionTable
Name Value
---- -----
PSVersion 7.0.3
PSEdition Core
GitCommitId 7.0.3
OS Linux 5.3.0-1035-aws #37-Ubuntu SMP Sun Sep 6 01:17:09 UTC 2020
Platform Unix
PSCompatibleVersions {1.0, 2.0, 3.0, 4.0…}
PSRemotingProtocolVersion 2.3
SerializationVersion 1.1.0.1
WSManStackVersion 3.0
Ini menimbulkan beberapa pertanyaan:
- Apakah PowerShell 7.0 dan 7.1 (saat ini sedang dikembangkan) dianggap sebagai aplikasi .NET Core yang diterbitkan " mandiri "?
- Apakah PowerShell 7.0 berisi versi mandiri / tertanam dari .NET Core 3.1?
- Akankah PowerShell 7.1 berisi versi mandiri / tertanam dari .NET 5.0?
- Jika Anda menginstal versi lain dari .NET Core atau .NET (seperti .NET 6.0 - saat dirilis), apakah itu akan mempengaruhi 7.0 atau 7.1, atau akan selalu menggunakan versi mandiri / tertanam?
Jawaban
Berikut ini tautan ke dokumentasi tempat mereka mencantumkan paket mana yang merupakan dependensi pada setiap distribusi Linux yang didukung secara resmi https://docs.microsoft.com/en-us/powershell/scripting/install/installing-powershell-core-on-linux ? view = PowerShell-7 # binary-archives
Paket PowerShell akan mereferensikan dependensinya, tetapi cara mendapatkannya bergantung pada cara Anda menginstal PowerShell.