bat脚本输出日志的方法

所属分类: 脚本专栏 / 其它 阅读数: 1692
收藏 0 赞 0 分享

一,bat脚本常用的的输出命令是“echo 输出内容”,可以利用echo将文本输出到cmd窗口或文件。bat脚本是不区分大小写的脚本语言,因此大小写都可以。

例如:

REM 在命令行窗口输出
echo Hello World!
pause

则会在命令行窗口输出Hello World!

通过bat打开命令行窗口运行上面的命令还会输出CMD运行相关的提示信息。如果想关闭多余的输出可以用 @ECHO OFF,示例:

@ECHO OFF
REM 在命令行窗口纯净的输出
echo Hello World!
pause

二,输出内容到文件

可以使用重定向将输出结果保存到文件中。

>符号和>>符号为两个常用的重定向符号。>会将原始文件的内容清空,>>会在文件后面追加内容,如果文件不存在则创建文件。

具体使用方法如下

echo Hello World >file.txt
echo Hello World 1>file.txt

echo Hello World 2>file.txt

       运行后,会将Hello World输出到file.txt中。两行代码等价。其中1的意思是代表将标准输出重定向,标准输出即正常的输出内容。而2>file.txt则代表将错误信息输出到file.txt中,这样Hello World会显示在屏幕上,只有报错的信息会保存在file.txt中。

三,输出内容追加到文件

示例:

echo Hello World >>file.txt

上面的语句使用了2个>,表示追加内容,如果file.txt内容不是空,则Hello World会在最后一行的后面另起一行保存。

 

四,将bat文件的输出结果放到txt文件中

        有时候我们会写批处理执行过程,会集中输出很多内容,又不想在bat里面频繁的试用输出到文件命令,怎么办呢?

我们可以尝试下面的办法:

@echo off
call "批处理路径">D:\结果.txt
start notepad D:\结果.txt

REM 再例如下面这样
@echo off
call "D:\procedure.bat">D:\结果.txt
start notepad D:\结果.txt

【实例】:

@ECHO OFF
echo 检查并停止相关服务....
echo ------------------------------
for %%i in (wuauserv,yun-wps) do (
  sc query "%%i" >nul && (
    echo %date:~0,4%-%date:~5,2%-%date:~8,2% %time:~0,8%开始停止服务:%%i >>"%date:~0,4%-%date:~5,2%-%date:~8,2%_%time:~0,2%.txt"
    net stop "%%i"
    
    ::@ECHO 开始卸载服务:%var%
    ::SC DELETE %var%
    
    REM net start "%%i"
    REM wmic SERVICE where name="%%i" get State|findstr /i "RUNNING" && ( echo %%i已启动。 )||( echo %%i未启动!请查看日志信息。 )
  )||(
    echo %date:~0,4%-%date:~5,2%-%date:~8,2% %time:~0,8%服务不存在:%%i 自动跳过>>"%date:~0,4%-%date:~5,2%-%date:~8,2%_%time:~0,2%.txt"
  )
)
echo 执行完成

REM pause
exit /B

将上面的脚本复制到txt里面,并另存为ANSI格式,重命名为:WinService-Stop.bat,然后在相同目录下新建一个txt,复制下面这段:

set ws=WScript.CreateObject("WScript.Shell")
ws.Run "WinService-Stop.bat",0

        将上面的脚本复制到txt里面,并另存为ANSI格式,重命名为:启动bat文件.vbs,它的作用是用了静默启动bat脚本而隐藏CMD窗口,隐藏命令行窗口使用户无感知。注意两个文件在同一目录。

        然后我们在“计算机-管理-任务计划程序”里面新增一个任务计划,定时执行“启动bat文件.vbs”就可以自动关闭Windows系统的自动更新啦。

以上所述是小编给大家介绍的bat脚本输出日志的方法,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对脚本之家网站的支持!
如果你觉得本文对你有帮助,欢迎转载,烦请注明出处,谢谢!

更多精彩内容其他人还在看

linux Shell学习笔记最后一节,温故与知新

linux Shell学习笔记最后一节,这节是对前面章节的小结,学习shell编程的朋友可以参考下。
收藏 0 赞 0 分享

一个不错的shell 脚本教程 入门级

一个很不错的bash脚本编写教程,至少没接触过BASH的也能看懂
收藏 0 赞 0 分享

脚本发生错误怎么解决 当前页的脚本发生错误的解决方法小结

我们经常在访问网页的时候,右下角经常出现脚本错误提示,记得一家国外的银行因为这个原因导致业务受到很大的影响,如果放到网站上对用户也容易产生一些错觉,网站有问题,不安全等等疑问
收藏 0 赞 0 分享

Perl 与 Python 之间的一些异同整理

Python 和 Perl 作为主流脚本语言中的成员,在语法等方面有很多相似之处,却又存在一定的差异。本文通过对这两种语言的比较,从而使得相关开发人员可以更深刻的了解和掌握这两种语言
收藏 0 赞 0 分享

两个很详细的shell 实例代码

现在我们来讨论编写一个脚本的一般步骤。任何优秀的脚本都应该具有帮助和输入参数。并且写一个伪脚本(framework.sh),该脚本包含了大多数脚本都需要的框架结构,是一个非常不错的主意
收藏 0 赞 0 分享

脚本与批处理合二为一

我们现在可以用JScript或VBScript来完成更复杂的工作,配合WMI,可以说是无所不能
收藏 0 赞 0 分享

利用命令进行简单的增量文件夹备份(win/linux)

这两天突然看到一个需求点,需要实现增量备份的功能,找了一些资料,记录一下如下命令,该命令可以利用命令行进行简单的增量备份功能
收藏 0 赞 0 分享

Swift语言与Applescript的区别?AppleScript的发展状况?

这篇文章主要介绍了Swift语言与Applescript的区别?AppleScript的发展状况? ,需要的朋友可以参考下
收藏 0 赞 0 分享

git eclipse 插件的安装

通常我们开发项目用ecliipse的比较多。所以在这把eclipse的Git插件安装和使用,需要的朋友可以参考下
收藏 0 赞 0 分享

软件测试方法大汇总

本文主要介绍几种软件测试方法,这里对软件测试做了几种分类和汇总,在做软件测试的时候可以用适当的方法,有需要的小伙伴可以参考下
收藏 0 赞 0 分享
查看更多