Batch file Windows批处理脚本:写入日志文件导致;由另一个过程使用;
我需要更新多个SVN工作副本。我想将其写入日志文件,但这是不可能的,因为一个SVN更新只需要几秒钟,而另一个可能需要几分钟 因此,我总是得到以下信息:Batch file Windows批处理脚本:写入日志文件导致;由另一个过程使用;,batch-file,svn,tortoisesvn,Batch File,Svn,Tortoisesvn,我需要更新多个SVN工作副本。我想将其写入日志文件,但这是不可能的,因为一个SVN更新只需要几秒钟,而另一个可能需要几分钟 因此,我总是得到以下信息: The process cannot access the file because it is being used by another process. 我正在使用以下代码: @echo off echo. :: Setting Variables set SVN_BIN=C:\Program Files\TortoiseSVN\bin
The process cannot access the file because it is being used by another process.
我正在使用以下代码:
@echo off
echo.
:: Setting Variables
set SVN_BIN=C:\Program Files\TortoiseSVN\bin\TortoiseProc.exe
set LOG_FILE=D:\BatchScripts\logs\svn-update.log
set CMD_TITLE="SVNUpdate"
set SOURCE1=D:\www\upload.example.com\
set SOURCE2=D:\www\download.example.com\
set SOURCE3=D:\www\client.example.com\
::
::
echo. %DATE% %TIME% Updating %SOURCE1% using SVN... >> "%LOG_FILE%"
START "%CMD_TITLE%" "%SVN_BIN%" /command:update /path:"%SOURCE1%" /closeonend:1 >> "%LOG_FILE%"
::
echo. %DATE% %TIME% Updating %SOURCE2% using SVN... >> "%LOG_FILE%"
START "%CMD_TITLE%" "%SVN_BIN%" /command:update /path:"%SOURCE2%" /closeonend:1 >> "%LOG_FILE%"
::
echo. %DATE% %TIME% Updating %SOURCE3% using SVN... >> "%LOG_FILE%"
START "%CMD_TITLE%" "%SVN_BIN%" /command:update /path:"%SOURCE3%" /closeonend:1 >> "%LOG_FILE%"
::
echo. %DATE% %TIME% Operation complete. >> "%LOG_FILE%"
如何存档以写入日志文件?该脚本将使用Windows任务计划程序每5分钟执行一次
START
参数/wait
没有帮助或解决问题,但它确实会大大减慢更新过程,因为它总是等待当前SVN更新完成,然后再开始下一次更新。这不是我想要的。TortoiseProc.exe不是执行此任务的工具。对于这种自动化,应该使用svn.exe
。阅读:
请记住,TortoiseSVN是一个GUI客户机,本自动化指南
演示如何使TortoiseSVN对话框显示以收集用户信息
输入。如果您想编写一个不需要输入的脚本,您可以
应该改用官方的Subversion命令行客户端
TortoiseProc.exe不是此任务的工具。对于这种自动化,应该使用
svn.exe
。阅读:
请记住,TortoiseSVN是一个GUI客户机,本自动化指南
演示如何使TortoiseSVN对话框显示以收集用户信息
输入。如果您想编写一个不需要输入的脚本,您可以
应该改用官方的Subversion命令行客户端
对每个源使用不同的日志?可能重复@Compo No,这是不同的问题。我说的是将某些内容重定向到日志文件。这篇文章讨论的是非关闭的TortoiseSVN过程。@LotPings也没有帮助。我已经尝试只记录
echo
,但这也已经存在问题。@Sebbo,您正在尝试使用交互式命令进程运行几个非交互式命令。我链接的帖子中的建议很明确,如果你想写一个不需要输入的脚本,你应该使用官方的Subversion命令行客户端。因此,我的建议是您尝试这样做并反馈结果。对每个源使用不同的日志?可能重复@Compo No,这是不同的问题。我说的是将某些内容重定向到日志文件。这篇文章讨论的是非关闭的TortoiseSVN过程。@LotPings也没有帮助。我已经尝试只记录echo
,但这也已经存在问题。@Sebbo,您正在尝试使用交互式命令进程运行几个非交互式命令。我链接的帖子中的建议很明确,如果你想写一个不需要输入的脚本,你应该使用官方的Subversion命令行客户端。因此,我的建议是,您尝试这样做,并反馈结果。太好了-谢谢您提供的信息!如何获取svn.exe
:太好了-感谢您提供的信息!如何获取svn.exe
: