ファイル名を確認し、保存先フォルダにコピーします

ファイル名を確認し、保存先フォルダにコピーします

現在、コマンド ラインを動作させようとしています。

動作方法は次のとおりです。フォルダーとサブフォルダー内のすべてのファイルで特定の名前をチェックし、それらのファイルを別のフォルダーにコピーします。

これまで試してみた

xcopy /d /y /s "D:\Test\Screenshot\pcd_*.jpg" "D:\Copy\pcd\"

問題は、/s を使用すると、すべてのフォルダーも考慮され、ファイルだけでなくフォルダーもコピーされることです。

そこで私はforループを考えて試してみました

for /r %d in (D:\Test\Screenshot\pcd_*.jpg) do xcopy /d /y "%d" "D:\Copy\pcd\"

しかし、運がありませんでした。エラーもなく、ただ何もありませんでした。

誰かが解決策を持っていることを願っています。また、お時間を割いていただいたことに感謝したいと思います。

答え1

テスト方法for /fその代わりfor /r、また、置き換えるxcopycopy指示:


cd /d "D:\Test\Screenshot\" && for /f tokens^=* %i in ('%__APPDIR__%where /r "." "pcd_*.jpg"')do copy /y "%~i" "D:\Copy\pcd\"

関連情報