考えられる解決策

考えられる解決策

Windows 7では、返されたファイルのリストを取得する方法はありますか?高度なクエリ構文(AQS)?

クエリの例を次に示します。

owner:bob type:image

そのクエリによって返されるファイルのリストをテキスト ドキュメントで取得したいのですが、コマンド ラインから AQS を使用できますか?

答え1

考えられる解決策

  1. Ctrlすべての結果を選択するには+ を押しますA
  2. キーを押したままShift、リストの最初の項目を右クリックします。
  3. 選ぶパスとしてコピーコンテキスト メニューから選択します。
  4. 結果を新しいテキスト ファイルに貼り付けます。

たとえば、C:\Windows\System32フォルダー内で次のクエリを使用することを検討してください。

type:image

出力は次のようになります。

"C:\Windows\System32\oobe\background.bmp"
"C:\Windows\System32\migwiz\PostMigRes\Web\base_images\AppInstalled.gif"
"C:\Windows\System32\migwiz\PostMigRes\Web\base_images\ClickDownExpanded.gif"
"C:\Windows\System32\migwiz\PostMigRes\Web\base_images\ClickDownNormal.gif"
"C:\Windows\System32\migwiz\PostMigRes\Web\base_images\Column.bmp"
"C:\Windows\System32\migwiz\PostMigRes\Web\base_images\Documents.gif"
"C:\Windows\System32\migwiz\PostMigRes\Web\base_images\Failure.gif"
"C:\Windows\System32\migwiz\PostMigRes\Web\base_images\Programs.gif"
"C:\Windows\System32\migwiz\PostMigRes\Web\base_images\System.gif"
"C:\Windows\System32\migwiz\PostMigRes\Web\base_images\Users.gif"
"C:\Windows\System32\migwiz\PostMigRes\Web\base_images\WindowsMail.bmp"
"C:\Windows\System32\migwiz\PostMigRes\Web\base_images\WindowsMovieMaker.bmp"
"C:\Windows\System32\migwiz\PostMigRes\Web\base_images\WindowsOutlookExpress.bmp"
"C:\Windows\System32\migwiz\PostMigRes\Web\base_images\WindowsPhotoGallery.bmp"

既知の制限

  • リストの最初の項目を選択しないと、結果の出力は適切に並べ替えられません。
  • すべての項目は引用符で囲まれます。
  • コピーされた結果には常に完全なパスが含まれます。

後処理

制限を克服するためのいくつかの方法。

手動ソート

必要に応じて、sortコマンドを使用して出力を手動で並べ替えることができます。コマンド・プロンプト

使用例

sort "X:\Path\to\input.txt" /o "X:\Path\to\sorted.txt"

引用符の削除

引用符が邪魔になるかもしれませんが、以下のバッチ スクリプトで削除できます。 として保存してくださいStripQuotes.cmd(または、拡張子はそのままで好きな名前で保存してください.cmd)。スクリプトは、それぞれ入力ファイルと出力ファイルの 2 つのパラメータを受け入れます。

使用例

StripQuotes.cmd "X:\Path\to\myfile.txt" /o "X:\Path\to\stripped.txt"

バッチスクリプト

@echo off
if "%~2" == "" exit /b 2
type nul>"%~2"
for /f "usebackq delims=" %%G in ("%~1") do echo %%~G>>"%~2"
exit /b

ファイル名のみを取得

フルパスを気にしない場合は、以下のバッチ スクリプトを使用できます。使用方法は上記のバッチ スクリプトと変わりません。

バッチスクリプト

@echo off
if "%~2" == "" exit /b 2
type nul>"%~2"
for /f "usebackq delims=" %%G in ("%~1") do echo %%~nxG>>"%~2"
exit /b

答え2

NirSoftの無料かつ多機能なユーティリティを使うこともできますシステムエクスポータ:

SysExporter ユーティリティを使用すると、システムで実行されているほぼすべてのアプリケーションから標準のリスト ビュー、ツリー ビュー、リスト ボックス、コンボ ボックス、テキスト ボックス、Web ブラウザー/HTML コントロールに保存されているデータを取得し、テキスト、HTML、または XML ファイルにエクスポートできます。

エクスプローラーにファイル検索結果が表示されている場合、SysExporter は既に検索結果を検出している可能性がありますが、そうでない場合は、結果ウィンドウにドラッグできるターゲット アイコンが表示されます。必要なエントリと必要な列を選択し、任意の列で並べ替えると、データをクリップボードにコピーするか、選択した形式でファイルにエクスポートすることができます。

画像

関連情報