据我了解,PowerShell 6 和 Core 使用 .Net Core 框架并且是跨平台的,而 PowerShell 5.1 使用 .Net 框架。据我了解,PowersSell Core 也没有 5.1 开发
你会建议我开始学习什么?我还是一名高中生,想在 INFOSEC 工作。我想开始学习 PowerShell 来创建自动编辑设置的脚本。你会建议我从 5.1、6 或核心开始吗?有什么资源推荐吗?
据我了解,PowerShell 6 和 Core 使用 .Net Core 框架并且是跨平台的,而 PowerShell 5.1 使用 .Net 框架。据我了解,PowersSell Core 也没有 5.1 开发
你会建议我开始学习什么?我还是一名高中生,想在 INFOSEC 工作。我想开始学习 PowerShell 来创建自动编辑设置的脚本。你会建议我从 5.1、6 或核心开始吗?有什么资源推荐吗?
随着时间的推移,命名发生了一些变化。最初,PowerShell 仅适用于 Windows,因为它使用完整的 .NET Framework。这些是 PowerShell 版本 1.0 到 5.1,现在我们通常称之为“Windows PowerShell”。二进制文件是powershell.exe
.
从 PowerShell 6.0 开始,该语言使用 .NET Core,并成为跨平台语言。这个有一个名为pwsh
or的二进制文件pwsh.exe
。有一段时间,这被称为 PowerShell Core。
从 PowerShell 7 开始,“核心”命名被删除。“PowerShell”是指这个仍在开发中的跨平台开源版本。
Windows PowerShell 自 5.1 起不再处于开发阶段,除了可能的安全修复。
据我了解,PowersSell Core 也没有 5.1 开发
一般来说,情况正好相反。所有新的发展都发生在所谓的“核心”中。
但是当它第一次出现时,由于各种原因,它在 Windows 上缺少一些功能:
已经做了很多工作来解决这个问题,因此这已成为一个越来越少的问题。还有一些变通方法,例如使用 PowerShell 从pwsh
Windows 系统远程处理的模块以这种方式执行模块。
至于应该学什么?两者,尤其是对于信息安全。
要记住的一件事是,Windows PowerShell 在所有现代 Windows 版本中都是开箱即用的,至少目前,您必须安装其他版本。
但同样,所有新开发、新功能等都是在跨平台版本中真正发生的。
语言本身在版本之间没有太大区别,应该很容易理解,只要您在查看文档时留意版本下拉菜单。