Articles of robocopy

Robocopy:/移动参数无法正常工作

我正在使用robocopy批处理脚本将文件从一台服务器移到另一台服务器, 但是我需要它在完成后删除原始服务器上的文件 (这应该发生在你使用/移动时)。 复制工作正常,但文件和文件夹后不删除。 谁能告诉我什么可能会出错? 命令: robocopy "\\Srv04\data\logs" "F:\Logs" /move /S /minage:8 谢谢,

如何robocopy只复制文件而不创build文件的父文件夹树

我正在使用robocopy从长层次结构的文件夹结构中复制某些文件。 例如: *.properties文件。 它们可能位于目录结构的很深层次(例如C:\a\v\b\g\f\aa.properties )。 现在我想复制这些属性文件到另一个只保留最上面的父文件夹(例如:目标文件夹结构将是a\aa.properties ); 我已经使用了/S选项,但也包括父母。 下面是我试过的batch file: @echo off ::Author = SHUBHENDU echo Copying files from %1 to %2 set source=%1 set destination=%2 set list=abc def (for %%a in (%list%) do ( echo Copying files from %%a ROBOCOPY %source%\%%a %destination%\%%a *_en.properties /S )) 源目录(示例): F:. │ temp.bat │ └───ss ├───asd │ ss_en.properties […]

批处理脚本复制符号链接,但不覆盖源(如果已经存在)

我试过Fastcopy和Robocopy,都似乎可以做任何一个这些操作,但不是两个。 对于像(在复制之前) D:\SYMLINKSOURCE\file1 <<symlink from D:\Source\file1 **edit D:\SYMLINKSOURCE\file2 <<symlink from D:\Source\file1 **edit D:\DESTINATIONxx\file2 <<not a symlink 我想复制D:\SYMLINKSOURCE\*到D:\DESTINATIONxx但不覆盖D:\DESTINATIONxx\file1这样复制后它看起来像 (AFTER COPYING) D:\SYMLINKSOURCE\file1 <<symlink from D:\Source\file1 D:\SYMLINKSOURCE\file2 <<symlink from D:\Source\file2 D:\DESTINATIONxx\file1 <<symlink from D:\Source\file1 D:\DESTINATIONxx\file2 <<not a symlink 我试过这个不覆盖,但它不保留符号链接,而是复制解决的文件复制文件没有覆盖 robocopy "D:\SYMLINKSOURCE" "D:\DESTINATION" /E /XC /XN /XO (AFTER COPYING) D:\SYMLINKSOURCE\file1 <<symlink from D:\Source\file1 D:\SYMLINKSOURCE\file2 <<symlink from D:\Source\file2 D:\DESTINATIONxx\file1 <<not […]

用于在远程共享之间复制文件的SMB协议

我需要从远程共享\ s1复制大量数据共享\ s2。 我正在使用robocopy,它使用SMB协议来复制文件。 我的问题 – 该协议是否允许直接从S1复制数据到S2,或者所有数据都必须通过运行robocopy的机器?

在Process中调用robocopy的批处理脚本将不会终止

如果从另一个线程甚至另一个程序调用process.Kill() ,那么如果批处理脚本使用了robocopy.exe直到完成,就好像它没有被WaitForExit() ,这个过程永远不会从WaitForExit()出来。 从批处理脚本调用Robocopy.exe。 其他的脚本或程序都会按照您的预期结束。 ProcessStartInfo startInfo = new ProcessStartInfo(); startInfo.FileName = "batch.bat"; startInfo.UseShellExecute = false; startInfo.CreateNoWindow = true; startInfo.RedirectStandardOutput = true; startInfo.OutputDataReceived += CaptureHandler; startInfo.RedirectStandardError = true; startInfo.ErrorDataReceived += CaptureHandler; process.Start(); process.BeginOutputReadLine(); process.BeginErrorReadLine(); process.WaitForExit(); 批处理脚本如下所示: @echo off call "robocopy.exe" "somedir" "somedest" /mir /fp /ndl /njh /njs /ns 我有一种感觉,它与输出处理程序有关。 我尝试使用process.CancelErrorRead和process.CancelOutputRead()以及之后的Kill()调用和之前,没有运气。 奇怪的是,如果使用process.WaitForExit(timeout)重载,它将在另一个线程的Kill()之后立即返回true。 但是,它在撒谎。 这个过程还在运行! 如果再次尝试process.WaitForExit() ,则按照MSDN文档,尽pipeHasExited表示正确,它仍将等待该过程完成。 […]

简单的备份脚本

我曾经为维护技术人员维护一个内部cmd线工具。 因此,我想确保我保留了以前版本的文件的档案,以防万一出现问题。 我想创build一个简单的batch file,每隔X天就可以作为计划任务运行,以便在networking共享上创build开发文件夹的副本。

RoboCopy在通用文件path中给出错误

我正在进行一些Arduino HID的研究。 我试图设置我的Leo打开PowerShell,并通过卷名将我的“文档”文件夹中的所有.pdf备份到闪存驱动器。 我希望这是可移植到不同的机器。 所以不能使用包含用户名的指定文件path。 我find的原始脚本就是这个。 param([parameter(mandatory=$true)]$VolumeName, [parameter(mandatory=$true)]$SrcDir) # find connected backup drive: $backupDrive = $null get-wmiobject win32_logicaldisk | % { if ($_.VolumeName -eq $VolumeName) { $backupDrive = $_.DeviceID } } if ($backupDrive -eq $null) { throw "$VolumeName drive not found!" } # mirror $backupPath = $backupDrive + "\" & robocopy.exe $SrcDir $backupPath /MIR /Z […]

将xcopy转换为robocopy

试图使用xcopy并排除文件夹及其所有子文件夹。 C:\Merged\org\a>xcopy /I /E /YC:\Merged\org\*.* C:\Merged\dest /exclude:"C:\Mer ged\org\a\*.*" Can't read file: "C:\Merged\org\a\*.*" 我想我不能排除文件夹,但只有文件与xcopy。 所以我想移动到robocopy,但我不知道使用哪个标志。 什么是我的上面的xcopy等价的robocopy?

robocopy将选项视为文件

当我使用robocopy复制文件并使用选项/IS覆盖(如果已经存在于目的地)。 它将该选项视为日志中可以看到的另一个文件: ERROR : Invalid Parameter #4 : "C:/Program Files/Git/IS" 任何人都知道如何在覆盖目标文件的同时在Windows中复制文件。 $ robocopy "Z:\ubuntushare" "C:\Natlink\Natlink\MacroSystem" "_git.py" /IS ROBOCOPY :: Robust File Copy for Windows Started : Sat Sep 17 18:00:05 2016 Source – Z:\ubuntushare\ Dest – C:\Natlink\Natlink\MacroSystem\ Files : _git.py Options : /COPY:DAT /R:1000000 /W:30 —————————————————————————— ERROR : Invalid Parameter #4 : "C:/Program Files/Git/IS" Simple […]

xcopy和xcacls脚本

几年前,一些伟人帮助我创build和修改了下面的脚本。 我现在需要对这个脚本进行一些修改,以使其运行速度更快,并消除当前具有的256个字符的限制。 我认为更新它使用两个robocopy(与mt开关),也许icacls将是最好的开始。 你能帮我创build一个我可以testing的工作模型吗? @echo off for /F "delims=*" %%F in ('xcopy /S /L \\file1\E$\Data1\*.jpg \ ^| findstr /v File^(s^)') do ( xcacls "%%F" /P "Authenticated Users:R" "domain\Administrator:F" "SYSTEM:F" "Photo Admins:F" /Y attrib -a "%%F" )