Lesson 3

PowerShell Coreの環境構築

Lesson 3 Chapter 1
PowerShell Coreの環境構築

このLessonでは、PowerShell Coreの動作環境を準備する方法について学びます。

PowerShell Coreは、Windows、macOS、およびLinuxで利用可能なクロスプラットフォームのPowerShellバージョンです。PowerShell Coreの環境を構築することで、これらの環境でPowerShellを利用することができます。

これ以降のLessonでは、PowerShell Coreを使用してPowerShellの操作を学ぶので、まずはPowerShell Coreの環境を構築しましょう。

このLessonでは、以下の内容を学びます。

  1. PowerShell Coreのダウンロードとインストール方法

    PowerShell Coreをダウンロードして、インストールする方法について学びます。

  2. PowerShell Coreの基本設定

    PowerShell Coreを使用するために必要な基本設定について学びます。 例えば、PowerShell Coreをデフォルトのシェルとして設定する方法や、PowerShell Coreのバージョンを確認する方法などが挙げられます。

  3. PowerShell Coreの基本的操作

    PowerShell Coreの使用においてごく基本的な動作について学びます。 例えばキーボード操作や、マウスの操作、コピー&ペーストなどが挙げられます。

PowerShell Coreの環境を構築する方法を学ぶことで、より多くの環境でPowerShellを活用できるようになります。

Lesson 3 Chapter 2
PowerShell Coreのインストール

PowerShell Coreをインストールするには、以下の手順に従ってください。

  1. PowerShell Coreのダウンロード

    PowerShell Coreをインストールする前に、公式のダウンロードページからWindows 10に対応するPowerShell Coreの最新バージョンをダウンロードします。 https://github.com/PowerShell/PowerShell/releases

    ファイル名に「win」がついているものがWindows版です。 今回は「PowerShell-7.3.3-win-x86.msi」をダウンロードしたと仮定して進めます。

    image1

  2. インストール

    ダウンロードが完了したら、インストーラ「PowerShell-7.3.3-win-x86.msi」をダブルクリックして実行します。

    インストーラーが起動すると、ライセンス契約に同意する必要がある場合があります。同意したら、「次へ」をクリックします。

    image2

  3. インストールのオプションの設定

    インストーラによって、PowerShell Coreをインストールする場所を選択することができます。デフォルトの場所を使用することをお勧めしますが、必要に応じて変更することもできます。

    image3

    次に、PowerShell coreの設定についてのダイアログが表示されます。 特にこだわりがなければ全てのチェックボックスにチェックした状態で次に進んでください。

    image4

    チェックボックスのそれぞれの意味は下記のとおりです。

    • "Add PowerShell to Path Environment Variable"

      これは、PowerShellをコンピューターのPATH環境変数に追加することを意味します。PATH変数は、コマンドプロンプトやPowerShellでコマンドを入力するときに、コンピューターが検索するディレクトリのリストです。PowerShellをPATHに追加することで、PowerShellの実行可能ファイルの完全なパスを指定せずに、好きなディレクトリからPowerShellコマンドを実行できます。 つまり、例えば本来は「"C:\Program Files\PowerShell\7\pwsh.exe" -Command Get-Host」と入力しなければならないところを「Get-Host」と入力するだけで実行できるようになります。 この項目にチェックを入れた場合、次の「PATHの設定」の項目はスキップしても構いません。

    • "Register Windows Event Logging Manifest"

      これは、PowerShellがWindowsイベントログのプロバイダーとして登録されることを意味します。これにより、Windowsのオペレーティングシステム環境でログを作成し、そのログに書き込み、または読み取ることができます。

      プロバイダー

      プロバイダーとは、プログラミングにおいてデータやサービスを提供するための仕組みのことです。プロバイダーは、データの入出力や操作を行うための統一された規格を提供し、プログラムがプロバイダーを切り替えることで異なるデータストレージやサービスにアクセスできるようにします。

    • "Enable PowerShell remoting"

      これは、PowerShellがリモート接続を許可するように設定されることを意味します。PowerShellを使用して、1つのコンピューターから他のコンピューターにリモート接続し、それらを管理することができます。

    • "Add 'Open here' context menus to Explorer"

      これは、Windows Explorerでフォルダを右クリックすると、そのフォルダ内でPowerShellウィンドウを開く選択肢が表示されるようになることを意味します。

    • "Add 'Run with PowerShell 7' context menu for PowerShell files"

      これは、PowerShellファイルを右クリックすると、「PowerShell 7で実行する」オプションが表示されるようになることを意味します。これは、複数のバージョンのPowerShellがコンピューターにインストールされている場合に役立ちます。正しいバージョンでファイルを実行していることを確認したい場合に使用できます。

    次にアップデートについての設定ダイアログが表示されます。 特にこだわりがなければ両方のチェックボックスにチェックした状態で次に進んでください。

    image5

  4. インストールの確認

    インストールのオプションを設定したら、「Install」をクリックしてインストールを開始します。

    image6

    インストールが完了したら、「Finish」をクリックして終了します。

    image7

これで、PowerShell Coreが正常にインストールされました。PowerShell Coreを使用するには、コマンドプロンプトまたはPowerShell Coreのアプリケーションを起動してください。

Lesson 3 Chapter 3
PATHの設定

PowerShell Coreをインストールした後、コンピューターのPATHを設定することで、PowerShell Coreを手軽に使うことができます。PATHとは、実行ファイルが保存されている場所を示すシステム環境変数です。PATHを設定することで、PowerShell Coreの実行ファイルをどのディレクトリにいても簡単に呼び出すことができます。

例えば、PowerShell Coreの実行ファイルがC:\Program Files\PowerShell\7\pwsh.exeに保存されている場合、本来は次のように実行ファイルのパスを指定してPowerShell Coreを起動する必要があります。

command
C:\Program Files\PowerShell\7\pwsh.exe

しかし、PATHを設定することで、コマンドプロンプトやターミナルから次のように直接呼び出すことができます。

command
pwsh

このように、PATHを設定することで、PowerShell Coreを手軽に起動することができます。

システム環境変数

「システム環境変数」とは、Windowsのシステム全体に適用される変数のことで、コンピューター全体の設定や機能に影響を与えます。例えば、PATHというシステム環境変数を設定することで、プログラムがどこにあっても簡単に呼び出すことができます。

以下の手順に従って、PowerShell CoreのPATHを設定します。

  1. PowerShell Coreのインストール先の場所を確認する

    PowerShell Coreをインストールした場所を確認します。デフォルトの場所では、PowerShell Coreは「C:\Program Files(x86)\PowerShell」にインストールされます。

  2. PATHを設定する

    検索ボックスに「PowerShell」と入力し、「システムの詳細設定の表示」をクリックします。

    image8

    「環境変数」ボタンをクリックし、下部の「システム環境変数」から「Path」を選択し、「編集」をクリックし、編集画面を開きます。

    image9

    編集画面に、PowerShell Coreのインストール先のパスを追加します。「C:\Program Files\PowerShell」を追加する場合は、以下のように入力します。

    ;C:\Program Files (x86)\PowerShell

    入力が終わったら、「OK」をクリックして編集画面を閉じます。

    image10

  3. PATHの設定の確認

    PowerShell CoreのPATHが正しく設定されたかどうかを確認するには、コマンドプロンプトまたはPowerShell Coreを開き、以下のコマンドを入力します。

    command
    pwsh

    PowerShell Coreが起動し、バージョンが表示された場合は、PATHの設定が正常に行われたことを示します。

    image11

これで、PowerShell CoreのPATHが正常に設定されました。PowerShell Coreを使用するときは、コマンドプロンプトまたはPowerShell Coreを開いて、コマンドを入力してください。

Lesson 3 Chapter 4
PowerShellの使い方

このチャプターでは、以降のLessonを効率的に進めるためにも、まずPowerShell Coreの基本的な使い方を学びましょう。

このチャプターを理解することによって、PowerShell coreを初めて使う方でも基本的な操作ができるようになります。さらにPowerShellには、多数のコマンドレット(命令)やオプションが存在しますので、学習を継続することでより高度な操作が可能になります。

PowerShell Coreを起動する

PowerShell Coreを起動する方法はいくつかありますが、ここではWindows 10の場合の基本的な方法を説明します。

  1. スタートメニューを開く

    スタートボタンをクリックするか、Windowsキーを押してスタートメニューを開きます。

  2. PowerShell Coreを検索

    スタートメニューの検索バーに「PowerShell Core」と入力します。検索結果に「PowerShell」というアプリが表示されます。

  3. PowerShell Coreをクリック

    「PowerShell」アプリをクリックすると、PowerShell Coreが起動します。

また、Windows PowerShellからPowerShell Coreに切り替える場合は、以下の手順で行います。

【Windows PowerShellからPowerShell Coreに切り替える手順】

  1. スタートメニューを開く

    スタートボタンをクリックするか、Windowsキーを押してスタートメニューを開きます。

  2. Windows PowerShellを検索

    スタートメニューの検索バーに「Windows PowerShell」と入力します。検索結果に「Windows PowerShell」というアプリが表示されます。

  3. Windows PowerShellをクリック

    「Windows PowerShell」アプリをクリックし、ウィンドウを開きます。

  4. PowerShell Coreに切り替える

    PowerShell Coreに切り替えるには、以下のコマンドを入力します。

    powershell
    pwsh

    このコマンドを入力すると、Windows PowerShellからPowerShell Coreに切り替わります。

以上が、PowerShell Coreを起動する基本的な方法です。もし、Pathの設定が正しくされていない場合は、PowerShell Coreが起動しない可能性があります。正しく起動しない場合は、再度環境設定を確認する必要があります。

Hello Worldしてみる

PowerShell Coreを起動したら、まずは簡単なプログラムを作成してみましょう。以下の手順に従って、「Hello World!」と表示するコマンドを実行してみましょう。

  1. PowerShell Coreウィンドウを開く

    スタートメニューからPowerShell Coreを開き、ウィンドウを開きます。

  2. プログラムを入力

    PowerShell Coreウィンドウに以下のコマンドを入力します。

    powershell
    Write-Host "Hello World!"
  3. プログラムを実行

    入力したコマンドを実行するには、Enterキーを押します。すると、PowerShell Coreウィンドウに「Hello World!」という文字列が表示されます。

以上が、PowerShell Coreで「Hello World!」と表示する簡単なコマンドの実行方法です。Write-Hostは、文字列を出力するためのコマンドです。任意の文字列をダブルクォーテーションで囲んで、Write-Hostコマンドの後ろに入力することで、PowerShell Coreで文字列を出力することができます。

PowerShell Coreを終了する

PowerShell Coreを終了する方法について、以下の手順で説明します。

  1. PowerShell Coreウィンドウをアクティブにする

    PowerShell Coreウィンドウをクリックして、ウィンドウをアクティブにします。

  2. 終了コマンドを入力する

    以下のコマンドを入力します。

    powershell
    Exit
  3. 終了コマンドを実行する

    入力したコマンドを実行するには、Enterキーを押します。

これで、PowerShell Coreが終了します。また、別の方法として、ウィンドウの右上にある「X」をクリックしてウィンドウを閉じることでも終了することができます。しかし、この方法だとプロセスが残ってしまう場合があるため、正しい方法としては「Exit」コマンドを使用することをお勧めします。

ターミナルの設定

PowerShell Coreのターミナルは、デフォルトの設定ではシンプルな黒い画面になっています。しかし、ユーザーが使いやすいように、ターミナルの外観や動作をカスタマイズすることができます。以下に、ターミナルの設定方法について説明します。

  1. プロファイルの作成

    PowerShell Coreでは、ターミナルに対するカスタマイズはプロファイルを通じて行います。プロファイルは、PowerShell Coreの設定や構成を定義するスクリプトファイルであり、ユーザーが自分の好みに合わせて編集できます。

    プロファイルを作成するには、以下のコマンドを入力します。

    powershell
    New-Item -ItemType File -Path $PROFILE -Force

    このコマンドは、PowerShell Coreによってプロファイルファイルが作成され、$PROFILE変数がその場所を指すようになります。

    image12

  2. プロファイルを編集する

    作成されたプロファイルを編集するには、以下のコマンドを入力します。

    powershell
    notepad $PROFILE

    このコマンドは、Notepadエディターを開き、作成されたプロファイルファイルを編集するための準備をします。

    プロファイルファイルには、任意のPowerShellコマンドを追加することができます。例えば、以下のコマンドを追加することで、背景色がダークブルーに設定され、テキストの色がホワイトに設定されます。Clear-Hostコマンドは、現在のコンソールウィンドウをクリアします。

    profile.ps1
    $PSConsoleWindow = $host.UI.RawUI
    $PSConsoleWindow.BackgroundColor = 'DarkBlue'
    $PSConsoleWindow.ForegroundColor = 'White'
    Clear-Host
  3. ターミナルの設定を反映する

    プロファイルを変更した場合、変更内容は次回PowerShell Coreを起動したときに適用されます。すでにPowerShell Coreを起動している場合は、以下のコマンドを入力して、ターミナルを再読み込みすることで変更内容を反映させることができます。

    powershell
    . $PROFILE

以上が、PowerShell Coreのターミナルの設定方法です。プロファイルを編集することで、ターミナルの外観や動作を自分好みにカスタマイズすることができます。

キーボード操作

「キーボード操作」とは、PowerShell Coreのコマンドプロンプトで、キーボードの操作を使って効率的にコマンドを入力する方法を学ぶことです。以下は、初心者が覚えておくべきいくつかのキーボード操作の例です。

Tab キー

コマンドやパスの補完に使用します。一部の文字を入力し、Tab キーを押すと、PowerShell Coreは入力を自動的に補完してくれます。

上下矢印キー

コマンド履歴をたどります。以前に入力したコマンドを、上下矢印キーで簡単にたどることができます。

Ctrl + C

現在のプロセスを中断します。コマンドが処理中に問題が発生した場合や、処理を中断する必要がある場合は、このキーボード操作を使用します。

Ctrl + A

入力行の先頭にカーソルを移動します。

Ctrl + E

入力行の末尾にカーソルを移動します。

これらのキーボード操作は、PowerShell Coreの使用をより簡単に、かつ迅速にするために非常に役立ちます。

タブ補完

PowerShell Coreの「タブ補完」とは、コマンドや変数などを入力する際に、最初の数文字を入力した後に「Tab」キーを押すことで、自動的に残りの文字列が補完される機能です。タブ補完を使用することで、タイプミスや長いファイル名を打ち間違えることを防止することができます。

タブ補完は、PowerShellコマンドラインで使用可能なすべてのコマンド、パラメータ、エイリアス(コマンドや関数に別の名前を割り当てること)、ファイル、ディレクトリの候補を自動的に検索し、ユーザーが入力した文字列に一致するものを表示します。ユーザーは、必要な候補を選択することができ、Enterキーを押して入力を確定することができます。 思ったコマンドと違うコマンドが補完された場合は、再度「Tab」キーを押すことで他の補完候補が表示されます。

タブ補完は、PowerShell Coreの中でも特に初心者にとって非常に便利な機能の一つです。コマンドの正しい入力方法を覚える前に、タブ補完を使用することで簡単にコマンドやパラメータを入力することができます。また、長いファイル名やディレクトリ名を打ち込む必要がある場合にも、タブ補完を使用することで効率的に入力することができます。

例えば、PowerShell Coreで「Get-ChildItem」コマンドを入力する場合、最初に「Get-C」まで入力した後、「Tab」キーを押すと、自動的に「Get-ChildItem」というコマンド名が補完されます。

また、タブ補完はコマンドだけでなく、変数やファイルパスなどでも利用できます。例えば、変数名が「$filePath」である場合、「$f」まで入力してから「Tab」キーを押すと、自動的に「$filePath」という変数名が補完されます。

タブ補完は、入力する文字列が長い場合や複雑な場合に特に便利です。また、タブ補完機能はPowerShell Coreの基本的な機能の1つであるため、初心者でも簡単に利用することができます。

コマンドの実行履歴を取得する

PowerShell Coreでは、過去に入力したコマンドの実行履歴を取得することができます。これは、同じコマンドを何度も入力する必要がなくなり、作業効率を上げるために非常に便利な機能です。

PowerShell Coreでコマンドの実行履歴を取得するには、以下の2つの方法があります。

  1. 履歴を表示するコマンドレットを使用する方法

    PowerShell Coreには、履歴を表示するためのコマンドレット「Get-History」が用意されています。このコマンドレットを実行すると、過去に入力したコマンドのリストが表示されます。表示された履歴から、必要なコマンドを選択して再度実行することができます。

    以下は、実行履歴を取得する例です。

    Get-Historyコマンドを使用して、実行履歴を表示します。
    powershell
    Get-History

    実行履歴には、実行されたコマンドの番号、実行されたコマンド自体、および実行した日時が表示されます。

    powershell
    Id CommandLine
    -- -----------
    1 Get-Process
    2 Get-ChildItem

    実行履歴には、それぞれ一意のIDが割り当てられています。特定のIDのコマンドを実行するには、Invoke-Historyコマンドを使用します。

    powershell
    Invoke-History -Id 1
  2. 矢印キーを使用する方法

    PowerShell Coreでは、過去に入力したコマンドを簡単に呼び出すためのショートカットキーが用意されています。キーボードの上下矢印キーを使用することで、過去に入力したコマンドを順番に呼び出すことができます。また、左右矢印キーを使用することで、呼び出したコマンドの編集や再利用も簡単に行えます。

以上の方法を組み合わせることで、PowerShell Coreでコマンドの実行履歴を効率的に利用することができます。初心者でも簡単に使いこなせるため、ぜひ活用して作業効率を上げてみてください。

マウス操作

PowerShell Coreは、コマンドラインツールであり、マウス操作が必須ではありません。しかし、PowerShell Coreでもマウスを使うことができ、操作性を向上させることができます。

PowerShell Coreでマウス操作を行うには、以下のような方法があります。

  1. マウスホイールで履歴をスクロール

    PowerShell Coreでコマンドを入力する際には、過去に入力したコマンドの履歴を利用することができます。このとき、マウスホイールを上下にスクロールすることで、履歴をスクロールすることができます。

  2. テキストの選択とコピー

    PowerShell Coreで表示されるテキストをマウスで選択することができます。選択したテキストは、マウスの右クリックメニューから「コピー」することができます。

  3. プロンプトの移動

    PowerShell Coreでは、マウスでプロンプトをクリックすることで、プロンプトの移動を行うことができます。これは、キーボードでの移動よりも簡単にプロンプトを移動することができます。

    プロンプト

    ここでいう「プロンプト」は、コマンドプロンプトやターミナルなどの画面上に表示される、ユーザーからの入力待ち状態を示すテキストのことを指しています。具体的には、マウスでプロンプトの表示位置をクリックすることで、カーソルを簡単に移動させることができます。

  4. ウィンドウのサイズ変更

    PowerShell Coreのウィンドウサイズを変更する場合、マウスを使用することができます。ウィンドウの右下隅にある「サイズ変更ハンドル」をドラッグすることで、ウィンドウのサイズを変更することができます。

以上のように、PowerShell Coreでもマウス操作を行うことができます。特に、テキストの選択やウィンドウのサイズ変更などは、マウスを使用することでより簡単に行うことができます。

コピー、ペースト

PowerShell Coreにおけるテキストの範囲指定を使用したコピーについて、以下に説明します。

マウスを使用してコピー、ペースト、カットする

  1. テキストの範囲を選択するために、マウスで範囲をドラッグします。選択した範囲は、グレーの背景で表示されます。
  2. 範囲を選択したら、右クリックしてコンテキストメニューを開きます。
  3. コンテキストメニューから、「コピー」を選択します。選択した範囲がクリップボードにコピーされます。
  4. テキストをペーストするには、ペーストしたい場所にカーソルを移動してから、右クリックしてコンテキストメニューを開きます。
  5. コンテキストメニューから、「貼り付け」を選択します。クリップボードに保存されているテキストが、選択した場所に貼り付けられます。

キーボードとマウスを使用してコピー、ペースト、カットする

テキストの範囲を指定してから、キーボードを使用してコピーする方法を紹介します。 以下は、範囲指定をしてコピーする方法の説明です。

  1. テキストの範囲を選択します。範囲は、Shiftキーを押しながらマウスをドラッグすることで選択することができます。
  2. Ctrlキーを押しながらCキーを押すと、選択した範囲がクリップボードにコピーされます。また、カットを行いたい場合は、Ctrlキーを押しながらXキーを押すことで、選択した範囲がクリップボードにカットされ、元のテキストは削除されます
  3. ペーストを行う場合は、カーソルを貼り付けたい位置に移動した上で、Ctrlキーを押しながらVキーを押すことで、クリップボードの内容を貼り付けることができます。

ショートカットキー

Ctrl+C:コピー Ctrl+X:カット Ctrl+V:ペースト

PowerShell Coreの場合、この方法は通常のテキストエディターと同じように機能します。ただし、PowerShell Coreのコンソール上で範囲指定をしても、右クリックメニューが表示されない場合があるため、注意が必要です。