Rainbow Engine

IT技術を分かりやすく簡潔にまとめることによる学習の効率化、また日常の気付きを記録に残すことを目指します。

Powershell

Powershellで親フォルダのパスを取得する方法+Split-Pathコマンドレットのオプションも併せてご紹介

投稿日:

<目次>

(1) Powershellで親フォルダのパスを取得する方法
 (1-1) 構文と使用例
 (1-2) ご参考:Split-Pathのオプション
(2) Powershellでフォルダ配下のファイル一覧を取得する方法

(1) Powershellで親フォルダのパスを取得する方法

Powershellで用意されているSplit-Pathコマンドレットを使って親フォルダを取得する方法をご紹介します。

(1-1) 構文と使用例

(構文)

Split-Path -Path [ファイルパス]

Split-Pathコマンドレットに対して「-Path」オプションで指定したフォルダorファイルの「1つ親の階層」を取得します。

(例)
この例では「C:\Temp1\Temp2\Temp3」の親階層である「C:\Temp1\Temp2」を取得します。

#(例)
Split-Path -Path "C:\Temp1\Temp2\Temp3"

#(結果)
C:\Temp1\Temp2

(図121)

目次にもどる

(1-2) ご参考:Split-Pathのオプション

ご参考までに、今回使用したSplit-Pathコマンドレットは「ファイルパスを加工」するためのオプションにがいくつかあるのでご紹介します。

(表)Split-Pathのオプション

オプション 説明
-Path コマンド実行する対象パスを指定し、1つ親の階層を取得します。
(右記の例では最後の「\」の前の部分を取得)
#(例)
Split-Path -Path “C:\Temp1\Temp2\Temp3”
#(結果)
C:\Temp1\Temp2
-Qualifier パスの修飾子を返却します。
(コロンより前のドライブ名の部分)
#(例)
Split-Path -Path “C:\Temp1\Temp2\Temp3”
#(結果)
C:
-Leaf パスの修飾子を返却します。
(末尾の節)
#(例)
Split-Path -Path “C:\Temp1\Temp2\Temp3” -Leaf
#(結果)
Temp3
-Resolve ファイル名を除いたパスを返却します。 #(例)
Split-Path -Path “C:\Temp1\Temp2\Temp3\*” -Resolve
#(結果)
C:\Temp1\Temp2\Temp3
C:\Temp1\Temp2\Temp3
C:\Temp1\Temp2\Temp3
-Leaf -Resolve 指定フォルダ内にあるファイル名の一覧を返却します。 #(例)
Split-Path -Path “C:\Temp1\Temp2\Temp3\*” -Resolve -Leaf
#(結果)
aaa.txt
bbb.txt
ccc.txt
-IsAbsolute 絶対パスか相対パスか?をboolean型で返却します(相対パスの場合=False、絶対パスの場合=True) #(例)
Split-Path -Path “.\Temp1\Temp2\Temp3\*” -IsAbsolute
#(結果)
False

#(例)
Split-Path -Path “C:\Temp1\Temp2\Temp3\*” -IsAbsolute
#(結果)
True

(図131)「-Qualifier」の例
ドライブ名の部分のみを取得しています。

(図132)「-Leaf」の例
パスの末尾の節(下記例ではファイル名)を取得しています。

(図133)「-Resolve」の例
パスからファイル名を除いて表示しています。

(図134)「-Resolve -Leaf」の例
ResovleとLeafを組み合わせると、Leafが効いてファイル名の部分のみを取得できます。

(図135)「-IsAbsolute」の例

目次にもどる

(2) Powershellでフォルダ配下のファイル一覧を取得する方法

上記で紹介しているSplit-Pathのオプション「-Resoleve -Leaf」を利用する事で、指定フォルダ配下にあるファイルの一覧を取得できます。

#(例)
Split-Path -Path "C:\Temp1\Temp2\Temp3\*" -Resolve -Leaf
#(結果)
aaa.txt
bbb.txt
ccc.txt

(図134)

目次にもどる

Adsense審査用広告コード


Adsense審査用広告コード


-Powershell

執筆者:


comment

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

関連記事

Powershellで文字列をタブ区切りで分割~splitオペレータの活用~

<目次> (1) Powershellで文字列をタブ区切りで分割~splitオペレータの活用~  (1-1) 構文  (1-2) サンプルプログラム    (サンプルプログラム#1)ベーシックな「-s …

Powershellのハッシュテーブル(hashtable)の作成方法や値の取得方法をご紹介

<目次> (1) Powershellのハッシュテーブル(hashtable)の作成方法や値の取得方法をご紹介  (1-1) ハッシュテーブルとは?  (1-2) ハッシュテーブルの構文  (1-3) …

「このシステムではスクリプトの実行が無効になっているため、ファイルXXXを読み込みことができません」エラー(PowerShell)が出る原因と対処方法

<目次> (1) 「このシステムではスクリプトの実行が無効になっているため、ファイルXXXを読み込みことができません」エラー(PowerShell)が出る原因と対処方法  (1-1) エラーメッセージ …

no image

ファイルのバックアップを自動化する手順をご紹介(Windows Powershell使用)

  <目次> (1) ファイルのバックアップを自動化する手順をご紹介(Windows Powershell使用)  (1-1) バックアップ自動化の方式(概要)  (1-2) バックアップ自 …

バッチから引数を与えてPowershellを実行する方法

<目次> (1) バッチからPowershellを実行する方法  (1-1) 構文①  (1-2) 構文② (2) バッチから引数を与えてPowershellを実行する方法  (2-1) 引数を表現す …

  • English (United States)
  • 日本語
Top