web-dev-qa-db-ja.com

使用可能なWindows検索フィルターを確認するにはどうすればよいですか?

私はよくWindows Search Filtersの使い方を知りました。 利用可能なドキュメント は非常に制限されていますが、その潜在的な用途は非常に大きいです。

入力したときに表示される検索フィルターは、「変更日」と「サイズ」だけです。グーグル操作で、ときどき機能する他のいくつかのオプションが表示されます。私はそれを使おうとするたびに、「どの検索フィルターを使用できるか、そして各フィルターはどのオプションをサポートするか」について考えています。広範なリストを見つける場所や、可能性のドロップダウンを提供するように検索を構成する方法について何かアイデアはありますか?

何かを見つけるために、私は常にコマンドプロンプトに戻ります。そうでなければできると思いたいのですが。

enter image description here

11
Abel

Search Filters」の代わりに、実際に探しているキーワード/フレーズは「Advanced Query Syntax」です。

いつものように、MSDNはさらにヘルプと詳細を参照する場所です。

ところで、RegExをサポートするはるかに優れた検索ユーティリティが必要な場合は、 AstroGrep または Everything を試してください。

7
Karan

ファイルシステムの属性(非表示、システム、読み取り専用など)に基づいて検索するには、直感的には明らかだが、ほとんど文書化されていないattributesキーワードを使用します。 Windows 7ヘルプフォーラムの this thread で説明されているように、使用方法は次のとおりです。

属性:numeric_attribute_code(s)

ファイル属性値(定数)は

_FILE_ATTRIBUTE_READONLY      = 1
FILE_ATTRIBUTE_HIDDEN        = 2
FILE_ATTRIBUTE_SYSTEM        = 4
FILE_ATTRIBUTE_DIRECTORY     = 16
FILE_ATTRIBUTE_ARCHIVE       = 32
FILE_ATTRIBUTE_ENCRYPTED     = 64 or 16384
FILE_ATTRIBUTE_NORMAL        = 128
FILE_ATTRIBUTE_TEMPORARY     = 256
FILE_ATTRIBUTE_SPARSE_FILE   = 512
FILE_ATTRIBUTE_REPARSE_POINT = 1024
FILE_ATTRIBUTE_COMPRESSED    = 2048
FILE_ATTRIBUTE_OFFLINE       = 4096
FILE_ATTRIBUTE_NOT_CONTENT_INDEXED = 8192
_

(前述のWindows 7ヘルプフォーラムでは、_FILE_ATTRIBUTE_ENCRYPTED_は64と記載されていますが、 ATTRIBコマンドに関するこのページ は16384と記載されています。私のテスト(Windows 7)では、16384が正しいことが示されています値。)

したがって、たとえば、_attributes:1_は、READONLY属性が設定されているファイルを検索します。のみ。これは、READONLY属性とARCHIVE属性の両方が設定されているファイルを検出しません。そのためには、_attributes:33_を使用します。両方を検索するには(つまり、READONLY属性が設定されていてHIDDEN、SYSTEM、ENCRYPTED、COMPRESSED、またはARCHIVE属性の状態に関係なく、その他のエキゾチックな拡張属性が設定されていないファイル)を見つけるには、

_attributes:1 OR attributes:33
_

しかし、この構文は手に負えなくなります。幸いなことに、省略形があります。

_attributes:(1 OR 33)
_

論理積/論理和キーワード(ANDおよびOR)は大文字にする必要があります。 attributes(およびfilenamekindtypedatedatemodified、などの検索フィルター(プロパティ)キーワードsizeownerdatetakenauthortitleなど)は大文字と小文字を区別しません。ちなみに、余分な入力が必要な場合は、attributesの代わりに_system.fileattributes_と言うことができます。

したがって、RH、およびA属性に基づくすべての可能な検索の数値検索コードは次のとおりです。 (_+R_は、HおよびAステータスに関係なく、すべての読み取り専用ファイルを表します。_+R -H_は上記の例で、すべての非表示でない読み取り専用ファイルです。 )

属性(記号)_         _数値_attributes:_値
_  +R  _(1 OR 3 OR 33 OR 35)
_  +R +H  _(3 OR 35)
_  +R +H +A  _ 35
_  +R +H -A  _ 3
_  +R -H  _(1 OR 33)
_  +R -H +A  _ 33
_  +R -H -A  _ 1
_  +R +A  _(33 OR 35)
_  +R -A  _(1 OR 3)
_  -R  _(0 OR 2 OR 32 OR 34 OR 128)
_  -R +H  _(2 OR 34)
_  -R +H +A  _ 34
_  -R +H -A  _ 2
_  -R -H  _(0 OR 32 OR 128)
_  -R -H +A  _ 32
_  -R -H -A  _(0 OR 128)
_  -R +A  _(32 OR 34)
_  -R -A  _(0 OR 2 OR 128)
_  +H  _(2 OR 3 OR 34 OR 35)
_  +H +A  _(34 OR 35)
_  +H -A  _(2 OR 3)
_  -H  _(0 OR 1 OR 32 OR 33 OR 128)
_  -H +A  _(32 OR 33)
_  -H -A  _(0 OR 1 OR 128)
_  +A  _(32 OR 33 OR 34 OR 35)
_  -A  _(0 OR 1 OR 2 OR 3 OR 128)

ノート:

  • クエリ用語は、その前に_-_(マイナス)を付けることで反転できます。たとえば、-attributes:(3 OR 35)を使用して、すべてのexcept非表示の読み取り専用ファイルを検索できます。
  • もちろん、attributesキーワードを使用して隠しファイルを検索しても、[フォルダオプション]で[隠しファイル、フォルダ、ドライブを表示する]を選択しない限り、何も見つかりません。
  • 論理的には、属性が設定されていないファイルのattributes値は0でなければなりませんが、そうではないようです。私の経験では、attributes値はNORMAL(128)です。
  • 圧縮、暗号化、インデックス化されていない、またはSYSTEM属性が設定されているディレクトリやファイル/ディレクトリを検索するには、最初の表から適切な定数を上の表の値に追加します。 「128」の値を含める必要はありません。たとえば、_-R -H +S -A_の場合、_4_ではなく_(4 OR 132)_を検索すれば十分です。
  • 「カスタマイズされた」(たとえば、非標準のアイコンが付いた)フォルダには、READONLY属性が設定されていることに注意してください。 (カスタマイズは非表示のシステム_desktop.ini_ファイルに保存されます。)
  • 他の属性を気にしない場合は、attributesキーワードを使用してディレクトリのみを検索する(つまり、ファイルを除外する)必要はありません。 _type:folder_を使用してください。同様に、_-type:folder_はファイルのみを検索します(ディレクトリを除く)。これを_kind:folder_と混同しないでください。これにより、真のファイルシステムフォルダーが検出されますが、_*.CAB_や_*.Zip_などのコレクションファイルも検出されます。
  • また、_encryptionstatus:encrypted_または_is:encrypted_を使用して、暗号化されたファイルとディレクトリを検索できます。逆は、_-encryptionstatus:encrypted_、_-is:encrypted_、または_encryptionstatus:unencrypted_として指定できます。
  • 当然、attributesキーワードを使用してシステムファイルを検索しても、「保護されたオペレーティングシステムファイルを非表示」にしない限り、何も見つかりません。 「フォルダオプション」で選択されています。