PowerShell ファイルパスを分割する
ファイルのフルパスからファイル名を抜き出したり、逆にパスだけ抜き出したりすることがあります。その時のためのメモです。
ドライブ名だけ抜き出す
$path ="C:\path\to\folder\aaa.txt"
$val = Split-Path $path -Qualifier
Write-Host $val
ドライブ名を省いた部分を抜き出す
$path ="C:\path\to\folder\aaa.txt"
$val = Split-Path $path -noQualifier
Write-Host $val
ファイル名を抜き出す
$path ="C:\path\to\folder\aaa.txt"
$val = Split-Path $path -Leaf
Write-Host $val
パスだけ抜き出す
$path ="C:\path\to\folder\aaa.txt"
$val = Split-Path $path -Parent
Write-Host $val
絶対パスか相対パスか判定する
$path ="C:\path\to\folder\aaa.txt"
$val = Split-Path $path -IsAbsolute #絶対パスなら$True 相対パスなら$False
Write-Host $val
$path =".\path\to\folder\aaa.txt"
$val = Split-Path $path -IsAbsolute #絶対パスなら$True 相対パスなら$False
Write-Host $val
おまけ ファイルを検索する
# ファイルを検索する ファイル名のみ
Split-Path -Path "C:\temp\*.pdf" -Leaf -Resolve
# ファイルを検索する パス付
Join-Path "C:\temp" *.pdf -Resolve
# ファイルを検索する ファイルと更新日
$items = Get-ChildItem "C:\temp\*.pdf" -File
foreach ($item in $items) {
$item.FullName
$item.LastWriteTime
}
この記事が気に入ったらサポートをしてみませんか?