メニュー

Windowsバッチ│検索結果のパス取得してコピー、後で元に場所に戻す方法

検索で抽出したデータだけをローカルで処理して、一気に元に戻せないかと試したことです。

海外でフリーランスをしているテクニカルアーティスト
ゲーム開発・映像制作・WEB制作等を請け負っています。
当ブログは作業効率化のための技術ブログです。

目次

追記│FastCopyを使ってのコピーする方法

こちらのほうが簡単だったので追記。

環境設定

  1. FastCopyをダウンロード&インストール
  2. 起動して、設定>一般設定>シェル拡張で有効化にチェック

ファイル検索結果の全てのパスを取得しつつコピー

  1. エクスプローラーで検索 たとえば「*.avi」で拡張子だけ絞り込む
  2. 検索結果をすべて選択
  3. 右クリックでFastCopyアイコンのコピーを選択
  4. ソフトが起動してコピー実行。(後で使うのでウインドウは閉じないこと)

あとはかけたい処理をします。

処理後に元に場所に戻す方法

  1. 処理後のファイルを全て選択してFastCopyアイコンのコピーを選択
  2. ソフトが起動するのでSourceのパスを取得
  3. あとは下記の項目「ローカルから元の場所に戻す方法」と一緒で、バッチ処理を記述

move /Y 元のパス 差し替えたい先のパス

move /Y  C:\Users\min\Desktop\copy\neko_1.avi C:\Users\min\Desktop\base\1\neko_1.avi
move /Y  C:\Users\min\Desktop\copy\neko_2.avi C:\Users\min\Desktop\base\2\neko_2.avi
move /Y  C:\Users\min\Desktop\copy\neko_3.avi C:\Users\min\Desktop\base\3\neko_3.avi
move /Y  C:\Users\min\Desktop\copy\neko_4.avi C:\Users\min\Desktop\base\4\neko_4.avi
pause

あとは実行するだけです。

エクセルなどで、元のパスと差し替えたいパスの記述をまとめると便利かもしれません。

検索結果のファイルのパスを取得する方法

  1. エクスプローラーで検索 たとえば「*.avi」で拡張子だけ絞り込む
  2. 検索結果をすべて選択
  3. Shift押しながら右クリックでパスのコピーを選択
  4. 以上で選択した全てのファイルのパスがコピーできます。
"C:\Users\min\Desktop\base\1\neko_1.avi"
"C:\Users\min\Desktop\base\2\neko_2.avi"
"C:\Users\min\Desktop\base\3\neko_3.avi"
"C:\Users\min\Desktop\base\4\neko_4.avi"

パスを控えたら、今度はデータ自体をローカルでコピーして、なんらかの処理を加えたりします。

パス取得におすすめのフリーソフト「Path Copy Copy」

ダブルクオーテーションがつかないのでこちらがおすすめです。

ファイルをローカルから元の場所に戻すBAT

  1. ローカルのコピーすべてを Shift押しながら右クリックでパスのコピー
  2. メモ帳を開いて下記のコードを書いて、test.batで保存
move /Y  C:\Users\min\Desktop\copy\neko_1.avi C:\Users\min\Desktop\base\1\neko_1.avi
move /Y  C:\Users\min\Desktop\copy\neko_2.avi C:\Users\min\Desktop\base\2\neko_2.avi
move /Y  C:\Users\min\Desktop\copy\neko_3.avi C:\Users\min\Desktop\base\3\neko_3.avi
move /Y  C:\Users\min\Desktop\copy\neko_4.avi C:\Users\min\Desktop\base\4\neko_4.avi
pause

※moveはデータの移動 /Yは上書き保存のオプションです。pauseはコマンドプロンプトのテキストを見るための停止処理です。

  1. test.batを実行

以上です。

置換におすすめのフリーソフト「ファイル置き換え」

同名のデータを検索して置換してくれます。ドラッグ&ドロップでいけるので便利です。

重複のデータを探して置換する時にも便利です。

まとめ

時間があれば、全部スクリプトでなんとかするかもしれませんが、ない場合は大量に繰り返す作業はバッチ処理が有効です。

全記事一覧

  • URLをコピーしました!
目次