使用できるPowerShellコマンドレット
- Get-ChildItem
- dir
- ls
[目次]
目次
使用例
カレントディレクトリ直下のファイルおよびフォルダを取得
PS C:\work\test> Get-ChildItem
ディレクトリ: C:\work\test
Mode LastWriteTime Length Name
---- ------------- ------ ----
d----- 2020/03/03 21:42 A
-a---- 2020/03/03 21:42 0 memo_abc.txt
-a---- 2020/03/03 21:42 0 memo_def.txt
カレントディレクトリ配下のサブディレクトリを含むすべてのファイルとフォルダを取得
PS C:\work\test> Get-ChildItem -Recurse
ディレクトリ: C:\work\test
Mode LastWriteTime Length Name
---- ------------- ------ ----
d----- 2020/03/03 21:55 A
-a---- 2020/03/03 21:42 0 memo_abc.txt
-a---- 2020/03/03 21:42 0 memo_def.txt
ディレクトリ: C:\work\test\A
Mode LastWriteTime Length Name
---- ------------- ------ ----
-a---- 2020/03/03 21:42 0 秘密のmemo_abc.txt
-a---- 2020/03/03 21:42 0 秘密のmemo_def.txt
名前に「abc」を含むファイルおよびフォルダを取得(サブフォルダ含む)
PS C:\work\test> Get-ChildItem -Recurse -Filter *abc*
ディレクトリ: C:\work\test
Mode LastWriteTime Length Name
---- ------------- ------ ----
-a---- 2020/03/03 21:42 0 memo_abc.txt
ディレクトリ: C:\work\test\A
Mode LastWriteTime Length Name
---- ------------- ------ ----
-a---- 2020/03/03 21:42 0 秘密のmemo_abc.txt
名前に「abc」を含まないファイルおよびフォルダを取得(サブフォルダも含む)
PS C:\work\test> Get-ChildItem -Recurse -Exclude *abc*
ディレクトリ: C:\work\test
Mode LastWriteTime Length Name
---- ------------- ------ ----
d----- 2020/03/03 21:55 A
ディレクトリ: C:\work\test\A
Mode LastWriteTime Length Name
---- ------------- ------ ----
-a---- 2020/03/03 21:42 0 秘密のmemo_def.txt
ディレクトリ: C:\work\test
Mode LastWriteTime Length Name
---- ------------- ------ ----
-a---- 2020/03/03 21:42 0 memo_def.txt
使用可能なオプション
オプション | 用途 | 備考 |
---|---|---|
-Path | 取得対象のパスを指定する | 指定しなかった場合はカレントディレクトリを取得する |
-Recurse | サブフォルダを再帰的に取得する | 指定しなかった場合は直下のディレクトリのみを取得する |
-Filter | 取得したいパスを指定 | ワイルドカード「*」使用可能 |
-Exclude | 除外したいパスを指定 | ワイルドカード「*」使用可能 |
詳細説明
冒頭に3つのコマンドを示しましたが、「Get-ChildItem」はPowerShell固有のコマンドレットで、dirとlsはそれぞれDOSコマンド、Unixコマンドだが、エイリアスとして用意されているので、どれを利用してもよい。
取得したいディレクトリを「-Path」で指定するとそのディレクトリ配下のファイルとディレクトリが取得できる。
さらに「-Recurse」オプションを付けると、そのディレクトリ配下全てのディレクトリを再帰的に取得できる。
また、特定の文字列を含んだものだけを取得したい場合は、「-Filter」でワイルドカードを用いて指定することができる。
逆に、特定の文字列を含みたくない場合は、「-Exclude」でワイルドカードを用いて指定することができる。
類似コマンド
- Get-Item
Get-ChildItemと同じように指定したパスのアイテムを取得するコマンドだが、Get-Itemは「-Path」が必須オプションとなっている。
「-Path」に指定されたパスがファイルだったらファイルの情報を、ディレクトリだったら、ディレクトリ自体の情報を取得する。
また、「-Path」にワイルドカード指定で取得した場合は、Get-ChildItemと同様に特定の文字列を含むフォルダまたはディレクトリを一覧を取得することができる。
最近のコメント