0

学校の課題があり、この 1 つの質問に行き詰まっています。他にどこを向くべきかわかりません。

したがって、この質問は、"myfile.txt" を環境変数 %BackUpPath% (C:\backup に設定されている) にコピーするスクリプトを作成するという前の質問の続きです。私のスクリプトは次のとおりです。

  • /y myfile.txt %backuppath% をコピーします

私が立ち往生している質問は、IF EXIST ステートメントを FOR ループと組み合わせて使用​​して、現在のディレクトリ内のすべてのファイルをコピーするスクリプトを作成するように求めていますが、サブディレクトリは %backuppath% にコピーしません。

このスクリプトはどのように記述すればよいですか?

4

2 に答える 2

1

これらのコマンドを任意の順序で試してください

@echo off tree "C:\backup" find /c "*.TXT" C:\Backup if exists "file path\name" move /y "files within the folder to other folder" del /f /s "main file-path" for each %.txt IN C:\Backup goto a <replace move with copy if needed> ;;this is a rough idea of what you might need.

于 2013-09-26T19:15:40.393 に答える
1

これで問題は解決するはずですが、実際のコードではなく学術的なものです。

の再帰スイッチを使用し、for-in-do によって生成された が現在のディレクトリに実際に存在するfor-in-doかどうかを確認し、それらのファイルをコピーします。filename.ext

@echo off
set "backuppath=c:\folder"
for /r %%a in (*) do (
    if exist "%cd%\%%~nxa" (
       echo copying "%%a"
       copy "%%a" "%backuppath%" >nul
    )
)
于 2013-09-27T09:10:10.183 に答える