MicrosoftはPowerShell Core、PowerShellの新しいバージョンをリリースしました。この新しいバージョンのPowerShellは、Windows、Linux、MacOSを含む主要なコンピューティングプラットフォームすべてで使用できます。Windowsにはすぐに使用できるPowerShell 5.1と、この最新バージョンのPowerShell Core v6.0が搭載されています。
PowerShellはMicrosoftのコマンドラインシェルとスクリプティング言語です。Windowsオペレーティングシステムに搭載されており、最初に登場したのは2006年でした。
さて、今では一般公開されているPowerShellのエディションが2つあります。1つ目はPowerShell v5.1で、2つ目は新しいPowerShell Core v6.0です。
PowerShellとPowerShell Coreの違い
最も重要な違いは、PowerShell Coreはクロスプラットフォームで、Windows、Linux、MacOSで動作するのに対し、古いものはWindowsでのみ動作するという点です。
興味があれば、PowerShell CoreをサポートされていないARMバージョンでも実行できますが、バグがあり、エラーが発生する可能性があります。
PowerShell Coreには新しい機能の更新と修正が提供されますが、古いPowerShellにはバグの修正とセキュリティの更新のみが提供されます。これは、Microsoftからの同じことについての公式な声明です。
ただし、現時点ではWindows PowerShellに新しい機能を導入する予定はありません。これは、Windows PowerShellの回帰のリスクが非常に低くなることを意味します。そのため、既存のワークロードの安定したプラットフォームとして信頼できます。
第二に、PowerShell Coreは、Windowsにすぐに搭載されているPowerShellほど強力ではありません。その理由は、新しいPowerShellは機能が限られた.NET Coreと.NET Standardを使用し、古いものは古い.NET Frameworkと.NET Standardを使用しているためです。
その理由は、.NET Coreが新しく、Microsoftが.NET Frameworkと同じくらい強力にするには時間がかかる必要があるためです。
Microsoftは、PowerShellワークフロー、PowerShellスナップイン、WMIv1コマンドレット、および特に目的の状態構成リソースを実行すると述べています。
さて、言い換えずに、すべての詳細を表形式で挿入してみましょう。
属性 | PowerShell | PowerShell Core |
バージョン | 1.0から5.1 | 6 |
サポートされているプラットフォーム | Windowsのみ(クライアント+サーバー) | Windows、Linux、MacOS |
依存関係 | .NET Framework | .NET Core |
使用法 | .NET Frameworkランタイムに依存 | .NET Coreランタイムに依存 |
起動されるもの | powershell.exe | Windowsではpwsh.exe、MacOSとLinuxではpwsh |
$PSVersionTable.PSEdition | デスクトップに設定 | コアに設定 |
今後のアップデート | バグの修正とセキュリティの更新のみ | 機能の更新、バグの修正、セキュリティの更新 |
さて、Windows、Linux、またはMacOSマシンでPowerShell Coreを試してみたい場合は、こちらの公式GitHubリポジトリページにアクセスして、システムに適したバージョンを見つけてください。
コメントする