3
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

Powershell 7 preview2をインストールしてみた

Posted at

はじめに

Powershell 7をインストールしてみた。
それだけ。

まとめ

  • Powershell5.1と同居できる!
  • 破壊的な変更が行われているため、5.1と7で使い分けができる。Powershell Core、6などが現環境にある人は破壊されてしまうようです。
  • 私の環境だけかもしれませんが、Path変数の値が変だった。

やったこと

  • まずは以下のURLを一読する。

なるほどなるほど… side by side… Zzz…?

  • GitHubのページから、[Assets]セクションを開き、Powershellのインストーラーをダウンロードする。

Assetsの文字見づらい…。
私はPowerShell-7.1.0-preview.2-win-x64.msiをインストールしました。

  • ほぼ標準のままインストールする。

私はExplorerへのコンテキストメニューの追加のチェックを入れました。

インストール終わり!

Powershell 5.1と7の共存確認

よーし、まずはメニューから起動して、バージョンを見てみよう!

Powershell7-psversiontable
> $psversiontable

Name                           Value
----                           -----
PSVersion                      7.1.0-preview.2
PSEdition                      Core
GitCommitId                    7.1.0-preview.2
OS                             Microsoft Windows 10.0.18363
Platform                       Win32NT
PSCompatibleVersions           {1.0, 2.0, 3.0, 4.0}
PSRemotingProtocolVersion      2.3
SerializationVersion           1.1.0.1
WSManStackVersion              3.0

おお…。
コマンドプロンプトを開き、powershellと入力して、Powershell5.1で同様にバージョン確認しよう!

Powershell5-psversiontable
> $psversiontable

Name                           Value
----                           -----
PSVersion                      5.1.18362.752
PSEdition                      Desktop
PSCompatibleVersions           {1.0, 2.0, 3.0, 4.0...}
BuildVersion                   10.0.18362.752
CLRVersion                     4.0.30319.42000
WSManStackVersion              3.0
PSRemotingProtocolVersion      2.3
SerializationVersion           1.1.0.1

完全に環境がわかれてる!これは破壊的だけど、長い間Powershell 5.1で開発を続けてきた身としては安心できる!

ps1ファイルを実行すると、どっちで動く?

以下のファイルを準備しました。

version_check.ps1
$ver = $psversiontable

$ver.PSVersion

read-host

ファイルを右クリック→Powershellで実行を試してみました。

結果
Major  Minor  Build  Revision
-----  -----  -----  --------
5      1      18362  752

右クリック→Powershellで実行だと、5.1の環境で動作する!

cmdからexeを指定して実行すると?

5.1で実行
>powershell -command .\version_check.ps1

Major  Minor  Build  Revision
-----  -----  -----  --------
5      1      18362  752

良い感じ。

7からはpowershell.exeではなく、pwsh.exeに変わっているそう。

7で実行
>pwsh -command .\version_check.ps1
'pwsh' は、内部コマンドまたは外部コマンド、
操作可能なプログラムまたはバッチ ファイルとして認識されていません。

…ん?パスが通ってない…?
ここでPCを一度再起動してみましたが変わりませんでした。
なんだか変だぞ。

パスを確認

PATHにはそれっぽい内容が追加されてる…?

PATH確認
$(get-childitem env:path).value
C:\WINDOWS\system32;C:\WINDOWS;C:\WINDOWS\System32\Wbem;C:\WINDOWS\System32\WindowsPowerShell\v1.0\;
(省略)
C:\Program Files\PowerShell\7-preview\preview;
(省略)

フォルダーをたどって、pwsh.exeを探してみると…。
C:\Program Files\PowerShell\7-preview\pwsh.exeにあった!

PATHの後ろのpreviewがいらないみたい。
PCのプロパティ→システムの詳細設定→環境変数→システムの環境変数→Path→編集→previewを削除する。
コマンドプロンプト閉じて、もう一度pwshから実行。pwshって打ちづらくないですか

PATHを通して7で実行
>pwsh -command .\version_check.ps1

Major  Minor  Patch  PreReleaseLabel BuildLabel
-----  -----  -----  --------------- ----------
7      1      0      preview.2

7で動いた!
-commandで動くあたりは変更が入ってないんだなー。(調べてからやれっていう突込みはなしで…)
基本的な使い方は踏襲されているみたい。

これから少しずつ7を触る機会を増やします!

3
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
3
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?