English 中文(简体)
需要将批量文件结果写入文本文件
原标题:Need to write batch file results to a text file
  • 时间:2012-05-24 16:26:40
  •  标签:
  • batch-file

我有一个批量文件, 我每晚都在运行, 我需要将结果写入结果文件( 不管是哪种类型 ) 。 这里是我的底部 。

这里基本上就是批量文件 :

SHUTDOWN /r /m \MACHINE1 /t %1 /c "This machine is forcibly restarting in %1 seconds!" /f
SHUTDOWN /r /m \MACHINE2 /t %1 /c "This machine is forcibly restarting in %1 seconds!" /f
SHUTDOWN /r /m \MACHINE3 /t %1 /c "This machine is forcibly restarting in %1 seconds!" /f

它包含大约248台夜间重开的机器。 我希望能够写出回复的结果, 以及哪些没有。 更重要的是, 是哪些结果。 也许像 erorlevel ===0 erorlevel==1 type thing? 我不知道这是否适用于这里 。

另外,除了实际列出 MACHINE1 MACHINE2 等等之外,我如何从文本文件中读取机器名称?

如果有帮助的话,这将会在我身后的台式计算机上作为夜间任务运行。

这么多的条目,我该怎么办呢?

提前感谢您!

问题回答

当运行时使用 shutdown.bat> & gt; 关闭.log 2 & gt;& 1 来将输出放入文件 。

要从文件读取机器名称, 您可以使用“ 循环” 这样的“ 循环 ” :

FOR /F %%name IN (machines.txt) DO SHUTDOWN /r /m \%%name /t %1 /c "This machine is forcibly restarting in %1 seconds!" /f

每台机器的名字都印在一条新线上

漂亮的格式化 :

@echo off
FOR /F %%name IN (machines.txt) DO (
    echo %%name
    SHUTDOWN /r /m \%%name /t %1 /c "This machine is forcibly restarting in %1 seconds!" /f
)




相关问题
complex batch replacement linux

I m trying to do some batch replacement for/with a fairly complex pattern So far I find the pattern as: find ( -name *.php -o -name *.html ) -exec grep -i -n hello {} + The string I want ...

How to split a string by spaces in a Windows batch file?

Suppose I have a string "AAA BBB CCC DDD EEE FFF". How can I split the string and retrieve the nth substring, in a batch file? The equivalent in C# would be "AAA BBB CCC DDD EEE FFF".Split()[n]

How to check which Operating System?

How can I check OS version in a batch file or through a vbs in an Windows 2k/2k3 environment ? You know ... Something like ... : "If winver Win2k then ... or if winver Win2k3 then ....

热门标签