批量文件算术没有回显结果

时间:2014-03-13 04:18:19

标签: math batch-file echo

如果我跑:

set number1=100

然后

set /a result=number1*2

命令和输出如下:

c:\set number1=100

c:\set /a result=number1*2
200
c:\

我正在处理一个更大的批处理文件。我想设置变量而不回显" 200"的结果。我将不胜感激任何帮助。提前谢谢!

编辑:这是有问题的批处理文件的一部分:

set /p msgTimeMin="Please enter the display time in Minutes (default 60min): " %=%
if [%msgTimeMin%]==[] set msgTimeMin=60
set /A "msgTime=msgTimeMin*10000"

在此之后,我跑:

msg * /server:%msgComputer% /w %msgTime% %message%

比如说,我想发送消息" Hello world!"对于我的本地计算机,该命令将基本上发送为:

msg * /server:127.0.0.1 /w 600000 "Hello world!"

我的计算机上弹出的消息将显示" 600000 Hello World!"我无法弄清楚为什么它会在消息中显示时间。

编辑2:

让我们取走批处理文件,然后从CMD提示符中运行一些命令。它很容易重复我试图避免的问题。在您自己的计算机上试试这个:

注意:您可能需要先在计算机上启用消息传递:

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Terminal Server\
AllowRemoteRPC= DWORD value "1"

然后从CMD提示中尝试:

set msgTimeMin=60

然后输入:

set /A "msgTime=msgTimeMin*1000"

你会看到600000回显,但忘了这一点,因为@echo off阻止了这一点。继续:

msg * /server:127.0.0.1 /w %msgTime% "Hello World!"

你会看到:

Message showing /wait time http://www.sourceplumbing.com/temp/snap0008.jpg

0 个答案:

没有答案