Batch file 如果将SkyDrive映射为网络驱动器并将文件复制到其中时发生错误,请创建错误日志

Batch file 如果将SkyDrive映射为网络驱动器并将文件复制到其中时发生错误,请创建错误日志,batch-file,Batch File,各位社区成员好, 我目前正在使用一个简单的批处理脚本将SkyDrive装载为网络驱动器,将文件复制到其中,最后断开连接。我将此作为非现场备份的基本形式 @echo off echo Backing up to Skydrive net use Z: \\https://d.docs.live.net/XXXX Password /user:Username copy D:\Home\Data\file1.ext Z:\ copy D:\Home\Data\file2.ext Z:\Documen

各位社区成员好, 我目前正在使用一个简单的批处理脚本将SkyDrive装载为网络驱动器,将文件复制到其中,最后断开连接。我将此作为非现场备份的基本形式

@echo off
echo Backing up to Skydrive
net use Z: \\https://d.docs.live.net/XXXX Password /user:Username
copy D:\Home\Data\file1.ext Z:\
copy D:\Home\Data\file2.ext Z:\Documents
net use Z: /delete
我希望添加到这个脚本中的是错误日志记录。命令一个接一个地运行,如果一个或多个命令失败,我想创建一个错误日志。 我想我需要使用ERRORLEVEL命令,但我不知道如何使用和实现它来实现我的目标

如果您有任何意见,我将不胜感激。
感谢您和advance给予的时间和关注。

您可以重定向stderr,以查找命令在执行时抛出的任何错误

@echo off
echo Backing up to Skydrive
net use Z: \\https://d.docs.live.net/XXXX Password /user:Username 2>>log.txt
copy D:\Home\Data\file1.ext Z:\ 2>>log.txt
copy D:\Home\Data\file2.ext Z:\Documents 2>>log.txt
net use Z: /delete 2>>log.txt
for %%a in (log.txt) do if not %%~za gtr 0 del %%a /f /q

很明显,您只输出了可能会出现错误的内容:)

谢谢。是否可以仅在发生错误时创建日志文件,还是必须创建日志文件(即使为空)?不用担心,问得好。我在末尾加了一行,以检查文件是否为空,以防没有错误,如果没有错误,则会将其删除。太好了。非常感谢。您的欢迎:)如果这回答了您的问题,您应该勾选此旁边的勾号以显示已接受。