1

質問したいのですが、宛先ディレクトリとサブディレクトリのファイルをソースの同じファイルに置き換えるにはどうすればよいですか?宛先ディレクトリまたはサブディレクトリのファイル「X」をソースディレクトリのファイル「X」に置き換えたい場合、スクリプトはすべてのディレクトリとサブディレクトリを調べてファイル「X」を見つけて置き換える必要があります。

Example 

Source:        "C:\MyPics\New\*.*"
Destination:   "C:\MyPics\All\A\*.*"
               "C:\MyPics\All\B\1\*.*"
               "C:\MyPics\All\B\2\*.*"
               "C:\MyPics\All\C\*.*"

これを達成するための提案はありますか?

お返事をお待ちしております。

ありがとう

4

1 に答える 1

1

これはテストされていませんが、コードは正しいと思います。

ソースから単一のファイルに置き換える場合は、

@echo off
set "src=C:\MyPics\New\"
set "dst=C:\MyPics\All\"
set "file=X"
for /f "eol=: delims=" %%F in ('dir /b /s "%dst%%file%"') do copy /y "%src%%file%" "%%F"

ソースからのすべてのファイルに置き換える場合は、

@echo off
set "src=C:\MyPics\New\*"
set "dst=C:\MyPics\All\"
for %%S in ("%src%") do (
  for /f "eol=: delims=" %%F in ('dir /b /s "%dst%%%~nxF"') do copy /y "%%S" "%%F"
)

定義内のマスクをsrcより具体的に変更できます*

于 2012-04-09T11:52:50.193 に答える