にしし ふぁくとりー(西村文宏 個人サイト)

Presented by Nishishi via Movable Type. Last Updated: 2015/09/22. 13:18:43.

ファイル名に半角スペースを含むファイルを検索する方法

Windows上でファイルを検索する際、「任意の文字列」がファイル名に含まれたファイルを探したい場合なら、ただ「その文字列」を入力して検索すれば良いだけです。
しかし、ファイル名に「半角スペース」を含むファイルを探したい場合にはちょっと困ります。

なぜなら、「半角スペース」は、キーワードの区切り文字として利用されるため、「半角スペース」を直接検索語として入力しても、検索語だとは見なされないからです。

そんなときは、引用符とワイルドカードを使って、

"* *"

という検索語にすると、うまくいく……と思ったんですが、
Windows上のエクスプローラ(マイコンピュータ)の検索窓を使った検索の場合、対象フォルダのインデックスが作成されているかどうかで結果が異なるっぽいですね。

下図は、

  • 1枚目が、インデックス作成が済んでいるフォルダで検索した結果です。ファイル名に「半角スペース」文字を含むファイルの検索ができています。
  • 2枚目が、インデックス作成が済んでいないフォルダで検索した結果です。半角スペースを含むファイルも含まないファイルも、すべてのファイルが該当してしまっています。

半角スペース記号を含むファイル名をエクスプローラ上で検索した結果 インデックスが作成されていないと、半角スペース文字を含むファイルも含まないファイルもすべてが該当してしまう?

コマンドプロンプト上で、ファイル名に半角スペースを含むファイルを検索

Windowsのエクスプローラ上では、上記のようにあんまりうまくいかないので、コマンドプロンプト上で、dirコマンドを使って実行してみました。
すると、こちらではうまくいきました。

コマンドプロンプトで、先にカレントディレクトリを「検索対象のディレクトリ(フォルダ)」に移動してから、

dir "* *"

のように打つと、半角スペース文字をファイル名に含むファイルだけがリストアップされてきます。
下図は、

  • 1枚目が、「dir」とだけ打った結果です。(=すべてのファイルが表示されます。)
  • 2枚目が、「dir "* *"」と打った結果です。(=ファイル名に半角スペース文字が含まれるファイルだけが表示されます。)

dirコマンドを使って、ディレクトリ内の全ファイルを表示させたところ。 dirコマンドを使って、ファイル名に半角スペース文字が含まれるファイルだけを表示させたところ。

このコマンドプロンプト上では、インデックス作成の有無は関係なく、うまく検索できているような気がします。

サブフォルダも含めて、すべての階層から半角スペース文字を含むファイルを探す

ちなみに、下記のように「/s」オプションを加えると、サブディレクトリも含むすべての階層を対象にして、一気に検索できます。

dir "* *" /s

下図は、Cドライブのルートディレクトリ上から、「dir "* *" /s」と打ってみたところです。
1枚目がWindows 7での実行例、2枚目がWindows XPでの実行例です。
どちらも、うまく検索できています。

すべてのフォルダから、ファイル名(またはフォルダ名)に半角スペース文字を含むものを検索(Windows 7) すべてのフォルダから、ファイル名(またはフォルダ名)に半角スペース文字を含むものを検索(Windows XP)

コマンドプロンプト上からファイルを検索できても、そのあと、それらのファイルに対して何らかの操作をしたい場合には、エクスプローラ上ほど便利にはいきません。
コマンドプロンプト上に出力される内容は、「>」記号を使ってファイルにリダイレクトできるので、

dir "* *" /s > FileList.txt

上記のような感じで、dirコマンドによるリストアップ結果をテキストファイルに出力してやれば、まあ、多少は便利に使える気がします。^^;

……もっと、何かうまい方法がありますかね?(^_^;;;
半角スペース文字をファイル名に含むファイルだけを検索する方法……。

ファイルの検索にも正規表現が使えれば、もっといろんな検索がスマートにいくのにな……と思うんですけどもね……。なんで、Microsoftは、正規表現を使って検索する機能を用意しないのかな……?

コメント

コメント数: 0件

コメント投稿欄 この日記に対するコメント投稿を歓迎します。

保存しますか?



※本文中にURLは書けません。(書くと投稿が拒否されますのでご注意下さい。)

※投稿内容は、実際にページ上に掲載される前に、管理者によって確認される設定にしている場合があります。その場合は、投稿後にその旨が表示されます。たいてい1~2日以内には表示されるはずですので、気長にお待ち願います。m(_ _)m

トラックバック

このエントリーへのトラックバックURLを表示するにはここをクリック
※スパム防止のため、トラックバックURLは別ウインドウで表示します。(JavaScriptが有効でないと表示されません。)

--- 当サイト内を検索 ---