PowerShell のコマンドの例

このページは、PowerShell のコマンドの例をまとめる予定のページです。

目次

注意

  • このページを作ったひとが備忘のためにまとめているため網羅性はありません。
  • Windows 10 に導入されているバージョン 5.1 を前提としています。他のバージョンでは動作しない可能性があります。

バージョン確認

バージョン確認
$PSVersionTable
出力例
Name                           Value
----                           -----
PSVersion                      5.1.19041.1320
PSEdition                      Desktop
PSCompatibleVersions           {1.0, 2.0, 3.0, 4.0...}
BuildVersion                   10.0.19041.1320
CLRVersion                     4.0.30319.42000
WSManStackVersion              3.0
PSRemotingProtocolVersion      2.3
SerializationVersion           1.1.0.1

日時

現在日時の表示 (yyyy-mm-dd hh:mm:ss)
Get-Date -format "yyyy-MM-dd HH:mm:ss"
現在日時の表示 (yyyymmddhhmmss)
Get-Date -format "yyyyMMddHHmmss"
現在日時の表示 (yyyymmddThhmmss)
Get-Date -format "yyyyMMddTHHmmss"
Get-Date -format filedatetime
現在日時をログファイル名にする
(Get-Date -format "yyyyMMddHHmmss") + ".log"

ファイル

ファイル名の取得

カレントディレクトリにあるファイルのファイル名のみ取得
Get-ChildItem -File -Name
カレントディレクトリにあるファイル (.txt) のファイル名のみ取得
Get-ChildItem -File -Name -Filter *.txt
Get-ChildItem -File -Name | ? { $_ -match "\.txt$" }
(-Includeで含める、-Excludeで除外)
Get-ChildItem -Include "*.txt" -Exclude "*.tmp.txt"
カレントディレクトリにあるファイルのフルパスを取得
Get-ChildItem -File | % { $_.FullName }
カレントディレクトリにあるディレクトリのディレクトリ名のみ取得
Get-ChildItem -Directory -Name

ファイル検索

txt ファイルを検索
Select-String -Path *.txt -Pattern '検索キーワード'

読み込み

テキストファイルの読み込み (行ごと)
$path = "test.txt"
foreach ($line in Get-Content $path) {

}

パス

親フォルダのパスの取得
Split-Path パス -Parent
スクリプトパスの取得 (スクリプトファイルでの実行中)
$PSScriptPath

CSV

CSV読み込み
Import-CSV test.csv -Header "Id", "Name" -Encoding Default
CSV書き込み
$arr = @()
$arr += [PSCustomObject][ordered]@{"Id" = 1; "Name" = "山田"}
$arr += [PSCustomObject][ordered]@{"Id" = 2; "Name" = "佐藤"}
$arr | Export-CSV test.csv -Encoding Default
CSV文字列化
$arr | ConvertTo-CSV -NoTypeInformation

関連