つれづれ電脳記(日くらしPCに向かひて)

つれづれなるままに、日くらしPCに向かひて、その悪戦苦闘ぶりをそこはかとなく書き付くるおじさん。たまに雑談[管理人:goosyun]

つれづれなるままに、日くらしPCに向かひて、デジタル関係の悪戦苦闘ぶりをそこはかとなく書き付くるおじさんです。
たまに雑談してます。連絡・問い合わせフォームは、ページ最下部に置いています。[著者(運営人):goosyun]

(当ブログには本文中に広告リンクが含まれています。)

PowerShellのGet-ChildItemでファイル抽出

 


1 PowerShellの勉強

 先日から、PowerShellをあれこれと試しています。最初は、PowerShellがどんなものか、さわりの部分だけでも分かればいいと思っていました。ところが、だんだんと欲が出てきました。少しだけ実際に使えるようなりたい、と。今のレベルで止めたら、何の意味もなさそうですし。

PowerShellの基本を学ぶ

2 Get-ChildItemとは

 そこで、PowerShellの中でもとても基本的なコマンドレット、「Get-ChildItem」のことを勉強しました。ファイル、ディレクトリなどを調べるコマンドレットです。
 コマンドラインにGet-ChildItemと打ち込んで、Enterキーを押せば、カレントディレクトリにあるファイル、ディレクトリを一覧表示してくれます。パラメータの指定が全くなくても、デフォルトでカレントディレクトリにあるアイテムを取得します。

3 ファイルを抽出

 Get-ChildItemのパラメータを使えば、いろいろできます。例えば、特定の種類のファイルの抽出などができます。カレントディレクトリ内の全てのtxtファイルを抽出する、といったことです。
 その方法は1つではありません。複数の方法が考えられます。

【1】-Pathパラメータにワイルドカード使用
  > Get-ChildItem ./*.txt

【2】-Includeパラメータにワイルドカード使用
  > Get-ChildItem ./* -Include *.txt

【3】-Filterパラメータにワイルドカード使用
  > Get-ChildItem . -Filter *.txt

4 -Includeパラメータ

 上記の3つの内、【2】の-Includeパラメータを使う方法で、ちょっとつまづきました。
 最初は、 > Get-ChildItem . -Include *.txt と、やっていました。
 ところが、これではダメです。何も抽出されません。-Pathパラメータには、カレントディレクトリを指す「.」の記述だけではダメで、「.\*」と指定する必要があります。
 Microsoftのオンラインヘルプで、次のように解説されています。

【Microsoftオンラインヘルプ】
 Include パラメーターを使用する場合、Path パラメーターには、ディレクトリの内容を指定するために末尾のアスタリスク (*) ワイルドカードが必要です。たとえば、-Path C:\Test\* のようにします。

5 今後

 PowerShellを、それほど深く学ぶつもりはありません。けど、Get-ChildItem くらいの基本中の基本は知っておいてもいいでしょう。

 それではまた次の記事で。
   goosyun