我在网络上有一个存储文件夹,所有用户将在服务器上存储他们的活动数据。现在,由于位置问题,服务器将被一个新的服务器所取代,所以我需要将子文件夹文件从旧的服务器存储文件夹复制到新的服务器存储文件夹。我有以下例子:
从\Oldeserver\存储\数据和文件到\新服务器\存储\数据和文件。
我在网络上有一个存储文件夹,所有用户将在服务器上存储他们的活动数据。现在,由于位置问题,服务器将被一个新的服务器所取代,所以我需要将子文件夹文件从旧的服务器存储文件夹复制到新的服务器存储文件夹。我有以下例子:
从\Oldeserver\存储\数据和文件到\新服务器\存储\数据和文件。
当前回答
只是要清楚,当你使用xcopy /s c:\source d:\target时,在c:\source和d:\target周围加上"",否则你会得到错误。
如果路径中有空格,即:
"C:\Some Folder\*.txt"
但如果你有:
C:\SomeFolder\*.txt
其他回答
你可以使用esentutl复制(主要是大文件)的进度条:
esentutl /y "my.file" /d "another.file" /o
进度条看起来是这样的:
如果您可以使用Bash,那么可以简单地使用带有递归选项的以下命令。
cp -r "C:\Users\sourceFolder\." "C:\Users\destinationFolder"
这将复制所有文件和文件夹包含在sourceFolder内destincationFolder
如果你不想用绝对路径复制文件,换句话说,相对路径:
不要忘记在路径中加上反斜杠而不是斜杠
例子:
copy children-folder\file.something .\other-children-folder
PS:绝对路径可以使用这些称为“批处理参数”的通配符检索。
@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/en-us/library/bb490886.aspx
这里还有批参数文档: https://www.microsoft.com/resources/documentation/windows/xp/all/proddocs/en-us/percent.mspx?mfr=true
要绕过'在目标上指定文件名或目录名(F =文件,D =目录)?的提示符,你可以做以下事情…
Echo f | xcopy /f /y srcfile destfile
或者对于我们这些只是复制大型子结构/文件夹的人来说:
如果复制多个文件,使用/i指定目标必须是一个目录
Windows用户
创建copyfile.bat
#!AutoCopy
xcopy /s C:\folder\from C:\folder\to
打开cmd 输入copyfile.bat按enter键