Robocopy 在 PowerShell 中不工作
Robocopy is not working in PowerShell
我正在尝试 运行 PowerShell 中的 robocopy 脚本,以便我可以将其插入到我的其他 PowerShell 脚本中:
$SERVERPATH = "E:\Cisco Config Backups"
$NETWORKPATH = "\SERVER\Cisco Config Backups"
robocopy $SERVERPATH $NETWORKPATH /E /XC /XN /XO /R:0 /W:0 /COPY:T /LOG:C:\logs\robocopy_logs\config_copy.log /TEE /NP
然而,当我 运行 这段代码时,我看到 robocopy 正在工作,它给我以下输出:
ROBOCOPY :: Windows
的强大文件复制
Started : Thursday, June 30, 2016 1:52:56 PM
Source : E:\Cisco Config Backups
Dest : \SERVER\Cisco Config Backups
Files : *.*
Options : *.* /TEE /S /E /DCOPY:D /COPY:T /NP /XO /XN /XC /R:0 /W:0
但没有任何内容被复制,我想使用 robocopy 进行日志记录,这样我就可以让它跳过已经存在的文件。
如果我做错了什么,请告诉我。
/COPY:T
条件指定只复制文件时间戳,所以它不复制文件的实际数据。但是,由于目标上没有要将时间戳复制到的文件,因此什么也不会发生。
您至少需要指定 /COPY:DT
以便复制文件数据,但您可能只需完全删除 /COPY
开关,因为您可能还需要文件属性,这默认情况下将与文件数据和时间戳一起复制。
来自 robocopy /?:
/COPY:copyflag[s] :: what to COPY for files (default is /COPY:DAT).
(copyflags : D=Data, A=Attributes, T=Timestamps).
(S=Security=NTFS ACLs, O=Owner info, U=aUditing info)
您还需要检查您正在使用的所有开关,因为有些开关存在冲突——不确定在这些情况下 robocopy 做了什么。正如 Matt 在下面的评论中指出的那样,您有 /E
和 /S
。是否要复制空子目录? /E
指定复制空目录,但 /S
指定不复制空目录。
我正在尝试 运行 PowerShell 中的 robocopy 脚本,以便我可以将其插入到我的其他 PowerShell 脚本中:
$SERVERPATH = "E:\Cisco Config Backups"
$NETWORKPATH = "\SERVER\Cisco Config Backups"
robocopy $SERVERPATH $NETWORKPATH /E /XC /XN /XO /R:0 /W:0 /COPY:T /LOG:C:\logs\robocopy_logs\config_copy.log /TEE /NP
然而,当我 运行 这段代码时,我看到 robocopy 正在工作,它给我以下输出: ROBOCOPY :: Windows
的强大文件复制 Started : Thursday, June 30, 2016 1:52:56 PM
Source : E:\Cisco Config Backups
Dest : \SERVER\Cisco Config Backups
Files : *.*
Options : *.* /TEE /S /E /DCOPY:D /COPY:T /NP /XO /XN /XC /R:0 /W:0
但没有任何内容被复制,我想使用 robocopy 进行日志记录,这样我就可以让它跳过已经存在的文件。
如果我做错了什么,请告诉我。
/COPY:T
条件指定只复制文件时间戳,所以它不复制文件的实际数据。但是,由于目标上没有要将时间戳复制到的文件,因此什么也不会发生。
您至少需要指定 /COPY:DT
以便复制文件数据,但您可能只需完全删除 /COPY
开关,因为您可能还需要文件属性,这默认情况下将与文件数据和时间戳一起复制。
来自 robocopy /?:
/COPY:copyflag[s] :: what to COPY for files (default is /COPY:DAT).
(copyflags : D=Data, A=Attributes, T=Timestamps).
(S=Security=NTFS ACLs, O=Owner info, U=aUditing info)
您还需要检查您正在使用的所有开关,因为有些开关存在冲突——不确定在这些情况下 robocopy 做了什么。正如 Matt 在下面的评论中指出的那样,您有 /E
和 /S
。是否要复制空子目录? /E
指定复制空目录,但 /S
指定不复制空目录。