コマンドプロンプトから、

あるファイルを検索して、別の場所にコピーするbatファイルをつくりたいのですが、
ファイルを検索するコマンドを教えてください。batファイルでなくても
いいです・・。

回答の条件
  • 1人2回まで
  • 登録:2008/10/26 07:52:08
  • 終了:2008/11/02 07:55:02

回答(5件)

id:a4w No.1

andrew回答回数25ベストアンサー獲得回数22008/10/26 08:03:06

ポイント42pt

(いわゆる)Unix系OSなら find コマンドでファイルを検索できます。

しかし、batファイルということですから、MS-DOSもしくはMS-Windows での話と想定します。

この find コマンドを MS-DOS (MS-Windows のコマンドプロンプトなど含む)に移植したものがありますので、それを使えば検索できますし、同様に移植された cp コマンドと合わせて、使えば検索とコピーを一行で行うことが可能です。

find 検索対象のディレクトリ -name 検索するファイル名 -print -exec cp {} コピー先 \;

id:pahoo No.2

pahoo回答回数5960ベストアンサー獲得回数6332008/10/26 10:57:39

ポイント28pt

DOSコマンドを利用という前提で回答します。


dir, for, copy の組み合わせでできます。

たとえば、Cドライブのルート以下にある拡張子 pdf のファイルをすべてDドライブのルートへコピーするのであれば、以下のようにします。(バッチではなく、コマンドラインからでも可能)

for /f %%A in ('dir /b /s c:\*.pdf') do copy "%%A" D:\

ただし、ファイル名に空白を含むものについては、正常に動作しません。

id:takerudayo No.3

takerudayo回答回数165ベストアンサー獲得回数292008/10/26 11:21:30

ポイント10pt

Windows系コマンドプロンプトであれば

「dir /s ファイル名」で検索することができます。


ただし注意が必要で、

この/sオプションは、今いるフォルダの中のサブフォルダも

検索すると言う意味のオプションになります。

dirコマンドを実行する場所は、検索したい範囲の一番上の

フォルダで実行する必要があります。


コマンドプロンプトで直接実行する場合は、

大概開いた瞬間は「C:\Documents and Settings~」 << WinXPの場合

となっているはずですので

cd c:\

などとしてからdirを実行すればCドライブ全体が探せます。


batファイルから実行する場合の良い例が

question:1181398201

にありました。

質問者が未読の回答一覧

 回答者回答受取ベストアンサー回答時間
1 foobar_777 78 66 18 2008-10-26 12:04:14
2 lunch25 22 15 1 2008-10-27 00:09:33

コメントはまだありません

この質問への反応(ブックマークコメント)

トラックバック

「あの人に答えてほしい」「この質問はあの人が答えられそう」というときに、回答リクエストを送ってみてましょう。

これ以上回答リクエストを送信することはできません。制限について

絞り込み :
はてなココの「ともだち」を表示します。
回答リクエストを送信したユーザーはいません