programing

배치 파일을 사용하여 폴더의 모든 내용을 다른 폴더로 복사하시겠습니까?

topblog 2023. 4. 23. 09:56
반응형

배치 파일을 사용하여 폴더의 모든 내용을 다른 폴더로 복사하시겠습니까?

폴더가 있습니다.C:\Folder1

의 모든 내용을 복사하고 싶다.Folder1다른 장소로 이동합니다.D:\Folder2

배치 파일을 사용하여 이 작업을 수행하려면 어떻게 해야 합니까?

xcopy.exe해답입니다.Windows에 내장되어 있습니다.

xcopy /s c:\Folder1 d:\Folder2

자세한 옵션은 http://www.computerhope.com/xcopyhlp.htm 에서 확인할 수 있습니다.

로보코피가 있으면

robocopy C:\Folder1 D:\Folder2 /COPYALL /E

그렇지않으면,

xcopy /e /v C:\Folder1 D:\Folder2

많은 답변이 있습니다.xcopy하지만 이것은 불필요합니다.질문에서 작성자가 폴더 자체의 복사가 아닌 폴더의 내용을 원한다는 것을 분명히 언급하고 있기 때문에 우리는 이 경우에 할 수 있습니다.

copy "C:\Folder1\*.*"  "D:\Folder2"

이상입니다 xcopy서브디렉토리가 존재하는 경우에 사용할 수 있습니다.C:\Folder1

대상이 파일인지 폴더인지를 나타내는 메시지를 삭제하려면 슬래시를 추가합니다.

xcopy /s c:\Folder1 d:\Folder2\

RoboCopy는 나에게 효과가 없었고, 여기에는 몇 가지 좋은 솔루션이 있지만, XCopy 스위치와 그 기능에 대해서는 아무도 설명하지 않았습니다.경로에 공백이 있는 경우에도 따옴표가 필요합니다.

xcopy /i /e "C:\temp\folder 1" "C:\temp\folder 2"

Microsoft 의 메뉴얼은 다음과 같습니다.

XCopy MS 매뉴얼

/s: Specifies to include subdirectories. Excludes empty subdirectories
/e: Copies all subdirectories, even if they are empty
/i: specifies the destination is a folder (Otherwise it prompts you)

다음은 폴더1의 내용을 폴더2에 복사하여 모든 서브디렉토리를 통해 자동으로 같은 이름의 파일을 덮어쓰는 robocopy 솔루션입니다.

robocopy C:\Folder1 C:\Folder2 /COPYALL /E /IS /IT

여기:

/COPYALL모든 파일 정보를 복사합니다.
/E빈 디렉토리를 포함한 서브 디렉토리 복사
/IS같은 파일을 포함합니다.
/IT같은 이름의 수정된 파일 포함

파라미터에 대한 자세한 내용은http://https://learn.microsoft.com/en-us/windows-server/administration/windows-commands/robocopy 를 참조해 주세요.

주의: 인수 때문에 관리자 권한으로 명령을 실행해야 할 수 있습니다./COPYALL할 수 없다면 그냥 없애버려

@echo off
::Ask
echo Your Source Path:
set INPUT1=
set /P INPUT1=Type input: %=%

echo Your Destination Path:
set INPUT2=
set /P INPUT2=Type input: %=%

xcopy %INPUT1% %INPUT2% /y /s

PC에서 xcopy 및 robocopy에는 C:\Windows\와 같은 경로도 필요합니다.시스템32\xcopy실행

그래서 'copy'를 사용하고 있습니다.copy /y...\폴더1\File.txt ..\폴더2\

@echo off
xcopy /s C:\yourfile C:\anotherfile\

이렇게 하는 거야!간단하죠?

참고로 거북이를 사용하는 경우SVN에서 전체 리포지토리를 정기적으로 "안전한" 위치에 xcopy(또는 디렉토리 미러)하기 위한 간단한 배치 파일을 만들고자 하는 경우, 이것이 사용할 수 있는 특정 코드입니다.숨겨진 디렉토리/파일에 복사하고 읽기 전용 속성을 유지하며, 모든 하위 디렉토리 및 무엇보다도 입력을 요구하지 않습니다.folder1(안전한 repo)과 folder2(사용 가능한 repo)를 올바르게 할당했는지 확인하십시오.

@echo off
echo "Setting variables..."
set folder1="Z:\Path\To\Backup\Repo\Directory"
set folder2="\\Path\To\Usable\Repo\Directory"
echo "Removing sandbox version..."
IF EXIST %folder1% (
    rmdir %folder1% /s /q
)
echo "Copying official repository into backup location..."
xcopy /e /i /v /h /k %folder2% %folder1%

여기까지입니다 여러분!

예약된 작업에 추가하고 뒤돌아보지 마십시오.

임시 폴더에 파일을 복사하여 붙여넣고 압축하여 smb 마운트 포인트로 전송하기 위해 .bat 파일을 작성했습니다.이것이 도움이 되었으면 합니다.

    @echo off
    if not exist "C:\Temp Backup\" mkdir "C:\Temp Backup_%date:~-4,4%%date:~-10,2%%date:~-7,2%"
    if not exist "C:\Temp Backup_%date:~-4,4%%date:~-10,2%%date:~-7,2%\ZIP" mkdir "C:\Temp Backup_%date:~-4,4%%date:~-10,2%%date:~-7,2%\ZIP"
    if not exist "C:\Temp Backup_%date:~-4,4%%date:~-10,2%%date:~-7,2%\Logs" mkdir "C:\Temp Backup_%date:~-4,4%%date:~-10,2%%date:~-7,2%\Logs"
    xcopy /s/e/q "C:\Source" "C:\Temp Backup_%date:~-4,4%%date:~-10,2%%date:~-7,2%"
   Backup_%date:~-4,4%%date:~-10,2%%date:~-7,2%\Logs"
    "C:\Program Files (x86)\WinRAR\WinRAR.exe" a  "C:\Temp Backup_%date:~-4,4%%date:~-10,2%%date:~-7,2%\ZIP\ZIP_Backup_%date:~-4,4%_%date:~-10,2%_%date:~-7,2%.rar" "C:\Temp Backup_%date:~-4,4%%date:~-10,2%%date:~-7,2%\TELIUM"
    "C:\Program Files (x86)\WinRAR\WinRAR.exe" a  "C:\Temp Backup_%date:~-4,4%%date:~-10,2%%date:~-7,2%\ZIP\ZIP_Backup_Log_%date:~-4,4%_%date:~-10,2%_%date:~-7,2%.rar" "C:\Temp Backup_%date:~-4,4%%date:~-10,2%%date:~-7,2%\Logs"
    NET USE \\IP\IPC$ /u:IP\username password
    ROBOCOPY "C:\Temp Backup_%date:~-4,4%%date:~-10,2%%date:~-7,2%\ZIP"  "\\IP\Backup Folder" /z /MIR /unilog+:"C:\backup_log_%date:~-4,4%%date:~-10,2%%date:~-7,2%.log"
    NET USE \\172.20.10.103\IPC$ /D
    RMDIR /S /Q "C:\Temp Backup_%date:~-4,4%%date:~-10,2%%date:~-7,2%"
@echo off
:: variables
echo Backing up file
set /P source=Enter source folder:
set /P destination=Enter Destination folder:
set xcopy=xcopy /S/E/V/Q/F/H/I/N
%xcopy% %source% %destination%
echo files will be copy press enter to proceed
pause

언급URL : https://stackoverflow.com/questions/4601161/copying-all-contents-of-folder-to-another-folder-using-batch-file

반응형