我在网络上有一个存储文件夹,所有用户都会将他们的活动数据存储在服务器上。现在由于位置问题,该服务器将被替换为新服务器,因此我需要将旧服务器存储文件夹中的子文件夹文件复制到新服务器存储文件夹中。我有以下示例:
从\Oldeserver\storage\data & files
到\New server\storage\data & files
。
我在网络上有一个存储文件夹,所有用户都会将他们的活动数据存储在服务器上。现在由于位置问题,该服务器将被替换为新服务器,因此我需要将旧服务器存储文件夹中的子文件夹文件复制到新服务器存储文件夹中。我有以下示例:
从\Oldeserver\storage\data & files
到\New server\storage\data & files
。
xcopy.exe 肯定对你有帮助,而且它已经内置在Windows中,所以它不需要任何费用。
只需要输入 xcopy /s c:\source d:\target
你可能需要调整一些选项,我们也会添加一些选项来进行调整:
/s/e
- 递归复制,包括复制空目录。/v
- 添加此选项可将副本与原始文件进行验证。速度较慢,但对于偏执者而言是必要的。/h
- 复制系统和隐藏文件。/k
- 复制只读属性以及文件。否则,所有文件都会变为可读写。/x
- 如果你关心权限,你可能需要 /o
或 /x
。/y
- 不提示覆盖现有文件。/z
- 如果你认为复制可能会失败,并且想要重新开始,可以使用此选项。它在复制每个文件时放置一个标记,因此您可以重新运行 xcopy 命令从停止的地方继续。如果你认为 xcopy 可能会在中途失败(例如在复制过程中出现网络故障),或者你必须停止并希望以后继续复制,可以使用 xcopy /s/z c:\source d:\target
。
/i
- 如果目标不存在且复制多个文件,则假定目标必须是一个目录。 - lavinioecho f | xcopy /s /f 源文件 目标文件
- wintondeshongxcopy /Y C:\file.txt C:\myfold\file.txt*
- linsock我最喜欢的备份数据工具是:
ROBOCOPY "C:\folder" "C:\new_folder" /mir
来源: http://technet.microsoft.com/en-us/library/cc733145.aspx
只是为了明确,当您使用xcopy /s c:\source d:\target
命令时,请将""放在c:\source和d:\target周围,否则会出现错误。
即如果路径中有空格,例如:
"C:\Some Folder\*.txt"
但如果你有以下条件,则无需此项要求:
C:\SomeFolder\*.txt
为了避免在使用xcopy时弹出“在目标上指定文件名或目录名(F =文件,D =目录)?”提示框,您可以执行以下操作...
echo f | xcopy /f /y 源文件 目标文件
或者对于我们只是复制大型子结构/文件夹的人:
使用/i指定如果复制多个文件,则目标必须是一个目录。
echo f | xcopy source destination /y
将使其自动化。它将为所有问题分配“f”作为响应。它还将传递覆盖请求(我认为f被视为是yes)。 - ndm13copy children-folder\file.something .\other-children-folder
注意:使用称为“批处理参数”的通配符可以检索绝对路径。
@echo off
echo %%~dp0 is "%~dp0"
echo %%0 is "%0"
echo %%~dpnx0 is "%~dpnx0"
echo %%~f1 is "%~f1"
echo %%~dp0%%~1 is "%~dp0%~1"
点击此处查看有关复制的文档:https://technet.microsoft.com/zh-cn/library/bb490886.aspx
还可以在此处查看有关批处理参数的文档: https://www.microsoft.com/resources/documentation/windows/xp/all/proddocs/zh-cn/percent.mspx?mfr=true
@echo off
rem The * at the end of the destination file is to avoid File/Directory Internal Question.
rem You can do this for each especific file. (Make sure you already have permissions to the path)
xcopy /Y "\\Oldeserver\storage\data\MyFile01.txt" "\\New server\storage\data\MyFile01.txt"*
pause
rem You can use "copy" instead of "xcopy "for this example.
cp -r "C:\Users\sourceFolder\." "C:\Users\destinationFolder"
这将复制位于sourceFolder
下的所有文件和文件夹到destincationFolder
中。