エクスプローラの検索で括弧()を含むファイルを表示する方法


エクスプローラで写真ファイルの整理をしていて重複ファイルのファイル名に(1) (2)というように番号が付きますよね。上書きで消してしまう事がなく便利なのですが、最後に余計なファイルは消したいです。
こんな時はエクスプローラの検索で選択して・・・あれ?括弧の検索ができない!


エクスプローラには検索用テキストボックスが表示されており、いつでもキーワードでファイルを検索する事ができます。ファイル名だけではなくファイルのプロパティも指定できるのですが検索用キーワードを覚えている人はほとんどいないでしょう。

この機能は"Advanced Query Syntax (AQS)"と言うようです。
Advanced Query Syntax
The Advanced Query Syntax (AQS) is used by Microsoft Windows Desktop Search (WDS) to help users and programmers better define and narrow their searches.
Windows デベロッパー センタ | Microsoft
ビデオや音楽といったファイル形式での絞り込み、ファイルサイズや日付による絞り込みなどもできます。使いこなせれば便利そう・・・と思って少しさわりますが、使いたい時には使い方を忘れています。
しかもWindowsのバージョンや言語で微妙に動作が違ったりします。クエリーのキーワードが変に日本語化されていて英文字のクエリーが使えなかったり。
Windowsで常に目にする場所にありながら使い方が全くわからない謎の機能です。
文字を入れればそれっぽいファイルが選択できるので時々使っている方も多いでしょう。
使い方がシンプルそうに見えて全く使えない!と思うのが重複ファイルを検索する時です。

エクスプローラ

上のエクスプローラ画面ではファイル名の最後に"(2)"や"_2"と付いたファイルが重複した写真ファイルです。これを選択して消したい!

簡単に「(2).jpg」と入れてみましょう。

エクスプローラ

思った検索とは違いました。"2"が単独で存在する所と"jpg"という文字列が検索されました。ファイル名の途中に"_2"とある単独の写真も選択されてしまいます。
これでは怖くて削除に使えません。
"("と")"はクエリーの命令で使われる文字なので検索する文字として働かないようです。
ダブルクォーテーションでくくるとそのまま文字が解釈されるというので「"(2).jpg"」として検索してみますが同じ結果になります。

エクスプローラ

命令で使う文字を指定するにはエスケープ文字を前に追加するという習わしがあります。
しかし、AQSにエスケープ文字というのは無いようです。

こんな簡単そうなこともできないなんて・・・
文字"_" アンダースコアも検索文字の対象とはならないようです。
さてどうしたら良いのでしょうか? 簡単そうに思えて情報が少ないです。

こちらのフォーラムで解決方法が議論されていました。
Windows 7 search for file with a special character in the file name?
asked Aug 5 '10 Matias Nino
"I'm trying to find files in Windows 7 that have a parenthesis in the file name.
However, when I type ( or *(* or "(" or *"("* I get either nothing or every file."
あぁ、みんな困っていたんですね、と安心。
結論としてはこのレスになります。
answered Sep 10 Meeks
~"* (?).*" for duplicates not exceeding (9), just add another ? for 2 digits. But be careful using * instead of ?. It broadens the search considerably and the results may no longer be desireable.
「"* (?).*"」とすれば良いようです。

エクスプローラ

おぉ! これですね。思っていたファイルだけが選択できました。
特殊な文字はダブルクォーテーションでくくるだけではなく*(アスタリスク)でくくることで文字として解釈されるようです。
"~"チルダはWindows 10では必要ありませんでした。

同様にアンダースコアがある場合も「"*_?.*"」として選択できます。

エクスプローラ

簡単に説明を追加しておきます。
"*"と"?"はワイルドカードです。"*"は任意の文字列に対応します。文字無しにも対応します。"?"は任意の1文字に対応します。
"* (?).*"とすれば括弧とそれに囲われた一文字とピリオドが連続したファイルが選択されます。

これで重複ファイルの削除がはかどります。

コメント

最近のコメント

Threaded Recent Comments will be here.