首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >批处理文件-如果存在&输出错误

批处理文件-如果存在&输出错误
EN

Stack Overflow用户
提问于 2014-02-14 15:03:55
回答 1查看 1.1K关注 0票数 1

信息: assets.txt包含一个我可以通过网络连接到的cpu名称列表。

我需要将这个新的.exe复制到200+计算机上,并认为我可以使用c$ admin共享。这是唯一的办法,我可以做到这一点,而不去工作站单独或远程处理一个接一个。

这个脚本在没有“if存在”的情况下工作,但是在尝试复制之前,我需要检查目录是否存在。我不明白为什么不起作用。我也使用我的域管理帐户运行这个脚本。

代码语言:javascript
复制
@echo off
REM Pull Computer Asset Tags from file
for /F "tokens=*" %%A in (assets.txt) do (
    echo Start Processing %%A
    REM Temporarily set file path for existence check
    set file=\\%%A\C$\Program Files\Intouch2\Intouch2ca.exe
    if EXIST "%file%" (
        REM Rename old .exe 
        ren "\\%%A\C$\Program Files\Intouch2\Intouch2ca.exe" "Intouch2ca.bak"

        REM copy new .exe from server to cpu asset
        xcopy "\\server\my dir\management\it\software\Intouch Upgrade\Intouch2ca.exe" "\\%%A\C$\Program Files\Intouch2\" /Y 
        echo END Processing %%A
        echo.
        echo ------------------------------------------------------------
        echo.
    )
)

我也无法将错误输出到日志文件中。我试过了,但这并不是我想要的。

xcopy "\\server\my dir\management\it\software\Intouch Upgrade\Intouch2ca.exe" "\\%%A\C$\Program Files\Intouch2\" /Y 1>>errors.log 2>&1

我怎么能把它弄得很漂亮,这样它就只能显示错误,并列出发生错误的%%A

提前谢谢大家抽出时间。

EN

回答 1

Stack Overflow用户

发布于 2014-02-14 15:15:19

副本上的错误将设置错误级别,您可以编写自定义错误消息。

代码语言:javascript
复制
copy "\\server\my dir\management\it\software\Intouch Upgrade\Intouch2ca.exe" "\\%%A\C$\Program Files\Intouch2\" >nul 2>&1
if errorlevel 1 >> errors.txt echo "Error in %%A"
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/21782742

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档