Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/batch-file/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/c/67.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Batch file 如何使用xcopy批量“复制但保留两个文件”_Batch File - Fatal编程技术网

Batch file 如何使用xcopy批量“复制但保留两个文件”

Batch file 如何使用xcopy批量“复制但保留两个文件”,batch-file,Batch File,在这里的第一个线程,我需要知道如何复制,但保持这两个文件的目录,我在启动时复制的批处理文件。这是我的代码: @ECHO OFF color 1F cls :choice echo Do you want to backup saves? set /P c=[Y/N]? if /I "%c%" EQU "Y" goto :y if /I "%c%" EQU "N" goto :somewhere_else goto :choice

在这里的第一个线程,我需要知道如何复制,但保持这两个文件的目录,我在启动时复制的批处理文件。这是我的代码:

@ECHO OFF    
color 1F    
cls    
:choice    
echo Do you want to backup saves?    
set /P c=[Y/N]?     
if /I "%c%" EQU "Y" goto :y    
if /I "%c%" EQU "N" goto :somewhere_else    
goto :choice    
:y   
cls
title Making Backup of saves...    
XCOPY C:\Users\Jaydon\AppData\Roaming\.minecraft\VersionFiles\1.9\saves\*     
C:\Backupof1.9\ /i /s /r /y    
cls    
:done    
echo Done!    
set /P c=Press a key to exit.    
if /I "%c%" EQU "" goto :doneexit    
exit
:doneexit    
cls    
exit       
pause     
exit    
cls    
:somewhere_else    
cls    
echo You have chosen to exit!    
ping 127.0.0.1 -n 5 > nul    
exit    
cls
我需要从以下位置复制所有文件夹和文件:

"C:\Users\Jaydon\AppData\Roaming\.minecraft\VersionFiles\1.9\saves\*" 

到目前为止,这只是夸大了它,这是好的。但最好让它创建一个新文件夹或添加1、2、3、4、5等等


感谢您的帮助,jjws600应该将您的存储备份到您请求的位置,但使用备份的日期和时间,并且它在列表中正确排序,因此最新的文件夹始终位于底部

它假定您有权限写入文件夹所在的c:驱动器的根目录

@echo off
rem The four lines below will give you reliable YY DD MM YYYY HH Min Sec MS variables in XP Pro and higher.

for /f "tokens=2 delims==" %%a in ('wmic OS Get localdatetime /value') do set "dt=%%a"
set "YY=%dt:~2,2%" & set "YYYY=%dt:~0,4%" & set "MM=%dt:~4,2%" & set "DD=%dt:~6,2%"
set "HH=%dt:~8,2%" & set "Min=%dt:~10,2%" & set "Sec=%dt:~12,2%" & set "MS=%dt:~15,3%"
set "datestamp=%YYYY%%MM%%DD%" & set "timestamp=%HH%%Min%%Sec%" & set "fullstamp=%YYYY%-%MM%-%DD%_%HH%-%Min%-%Sec%-%MS%"

echo datestamp: "%datestamp%"
echo timestamp: "%timestamp%"
echo fullstamp: "%fullstamp%"
if not defined fullstamp goto :EOF

set "datafolder=C:\Users\Jaydon\AppData\Roaming\.minecraft\VersionFiles\1.9\saves"
set "backupfolder=C:\Backupof1.9\%fullstamp%"

set switches=/r:0 /w:0 /mir /ns /nc /ndl /np /njh /njs

robocopy %switches% "%datafolder%" "%backupfolder%"

pause

是否每次都要将整个文件夹和树备份到不同的文件夹?C:\Users\Jaydon\AppData\Roaming\.minecraft\VersionFiles\1.9\saves\*我想将saves文件夹复制到C:\Backupof1.9\每次添加1,2。这样我每次使用批处理文件时都有备份。谢谢,jjws600
@echo off
rem The four lines below will give you reliable YY DD MM YYYY HH Min Sec MS variables in XP Pro and higher.

for /f "tokens=2 delims==" %%a in ('wmic OS Get localdatetime /value') do set "dt=%%a"
set "YY=%dt:~2,2%" & set "YYYY=%dt:~0,4%" & set "MM=%dt:~4,2%" & set "DD=%dt:~6,2%"
set "HH=%dt:~8,2%" & set "Min=%dt:~10,2%" & set "Sec=%dt:~12,2%" & set "MS=%dt:~15,3%"
set "datestamp=%YYYY%%MM%%DD%" & set "timestamp=%HH%%Min%%Sec%" & set "fullstamp=%YYYY%-%MM%-%DD%_%HH%-%Min%-%Sec%-%MS%"

echo datestamp: "%datestamp%"
echo timestamp: "%timestamp%"
echo fullstamp: "%fullstamp%"
if not defined fullstamp goto :EOF

set "datafolder=C:\Users\Jaydon\AppData\Roaming\.minecraft\VersionFiles\1.9\saves"
set "backupfolder=C:\Backupof1.9\%fullstamp%"

set switches=/r:0 /w:0 /mir /ns /nc /ndl /np /njh /njs

robocopy %switches% "%datafolder%" "%backupfolder%"

pause