Power Shellで利用するコマンドをコマンドレットといいます。
コマンドプロンプトではできなかった、複数のコマンドを実行したりなど、複雑な命令を処理することができます。
コマンドレットは「動詞-名詞」という形式になっており、コマンドプロンプトに比べコマンドを打つ量が少なく直感的に利用できるのが特徴です。
今回は、よく使うであろうコマンドレットをご紹介します。
Power Shellについて詳しくは以下にあります↓

コマンドプロンプトについて詳しくは以下にあります↓

PowerShellでのファイル操作に使うコマンドレット
ファイル操作で利用するコマンドレットです。
ファイル検索
Get-ChildItemはフォルダ名やファイル名の一覧を取得するコマンドレットです。
-Pathパラメータと-Filteパラメータを指定することで、任意のファイルを探すことができます。
Get-ChildItem -Path 探すフォルダのパス -Filte ファイル名
以下は、「Cドライブの中でtestが含まれるファイルやフォルダを検索する」という意味のコマンドです。
ファイルの場合は.txtなどの拡張子が付きますが、検索結果には拡張子がついていないので、「test」の文字が含まれたフォルダが1か所で見つかったことがわかります。
ファイル作成
New-Item ファイル名
上記のコマンドを実行すると、以下のようなエラーメッセージが出力されます。
既に同じファイル名のファイルが存在するというメッセージです。
そのため、ファイル作成時は既に同名のファイルが存在する場合は上書きをする、
-Forceオプションを付けて実行します。
New-Item ファイル名 -Force
フォルダ作成
New-Itemでフォルダを追加する場合は、-typeオプションを付けて、Directoryと指定します。
New-Item フォルダ名 -type directory -Force
こちらも-Forceを付けることで、同名フォルダが存在していた場合のエラーを回避します。
フォルダの場合は空のフォルダが上書きされるのではなく、同名フォルダの中身は保たれます。
ファイル移動/フォルダ移動
移動のコマンドレットは Move-Item です。
例として、Cドライブ上にフォルダを2つ作成し、ファイルの移動とフォルダの移動をテストします。
ファイル名を変えない場合は以下のコマンドを実行します。
Move-Item 移動元ファイル 移動先ディレクトリ
移動先にファイルがそのままの名前で移動しました。
ファイル名を変える場合は以下のコマンドを実行します。
移動先ファイル名は、変更後のファイル名を指定します。
Move-Item 移動元ファイル 移動先変更後ファイル名
移動先に指定したファイル名で移動していることが確認できます。
フォルダを移動する場合は、上記コマンドのファイル名をフォルダ名に変換して実行します。
ファイルコピー/フォルダコピー
移動のコマンドレットは Copy-Item です。
先ほどの例を使って、コピーコマンドも試してみます。
「移動先フォルダ」「移動元フォルダ」のフォルダ名を「コピー先フォルダ」「コピー元フォルダ」に変更しました。
Copy-Item コピー元ファイル コピー先ディレクトリ
複製後のファイル名を変える場合は以下のコマンドを実行します。
コピー先ファイル名は、変更後のファイル名を指定します。
Copy-Item コピー元ファイル コピー先ファイル名
こちらもコピー先フォルダに名前変更後のファイルが複製されていることが確認できます。
コピー元フォルダにはそのままファイルが残っている状態です。
フォルダ内表示
Get-ChildItem でフォルダ内の表示ができます。
-File オプションを付与することで、ファイルのみを取得するようになります。
Get-ChildItem フォルダ名 -File
プログラムの起動と停止
Start-Process コマンドレットを使用することで、(.exe)などのアプリ実行やソースコードの起動を行うことができます。
Start-Process アプリ名
代表的なアプリで試してみます。
Excel
Word
Outlook
Access
メモ帳
Edgeブラウザ
起動したプロセスの停止は、STOP-Processを使うことでできます。
STOP-Process プロセスID
アプリの終了をするためには、アプリ名ではなくプロセスごとのIDを指定する必要があります。
プロセスIDの取得には、GET-Processにアプリ名を付けることで取得できます。
GET-Process アプリ名
IDは19056ということが確認できました。
プロセス停止にプロセスIDを指定してアプリの終了してみます。
IPネットワーク情報(ipconfigの代わり)
IPネットワークの構成を取得します。
設定されているIPアドレス等の情報を取得できます。
Get-NetIPConfiguration -all
-allパラメータを付け、全ての情報を取得します。
IPv4AddressがパソコンのIPアドレスです。
IPv4DefaultGatewayが内部と外部のネットワークをつなぐルーターのIPアドレスです。
パソコンのIPアドレスとルーターのIPアドレスが同じ10.55~の系統であれば、パソコンとルーターの接続はできているといえます。
まとめ
PowerShellのコマンドレットは、複数のコマンドを実行したりなど、複雑な命令を処理することができます。
コマンドレットは「動詞-名詞」という形式になっており、コマンドプロンプトに比べコマンドを打つ量が少なく直感的に利用できるのが特徴です。
ファイル操作やプログラムの起動、タスクスケジューラとの組み合わせで、業務効率化に取り入れてみてください。
