我正在使用这个脚本:
@echo on
setlocal ENABLEDELAYEDEXPANSION
set vidx=0
for /F "tokens=*" %%A in (C:\Users\Diana\Desktop\names.txt) do (
SET /A vidx=!vidx! + 1
snmpwalk -v 2c -c root %%A .1.3.6.1.2.1.25.3.3.1.2 > C:\Users\Diana\Desktop\cpu.txt
snmpwalk -v 2c -c root %%A .1.3.6.1.2.1.25.5.1.1.2 > C:\Users\Diana\Desktop\ramvid.txt
snmpwalk -v 2c -c root %%A .1.3.6.1.2.1.25.2.2 > C:\Users\Diana\Desktop\ram.txt
)
FOR /F "tokens=4" %%B IN (C:\Users\Diana\Desktop\ram.txt) DO echo %%B >> C:\Users\Diana\Desktop\ramfiltruotas.txt
FOR /F "tokens=4" %%B IN (C:\Users\Diana\Desktop\cpu.txt) DO echo %%B >> C:\Users\Diana\Desktop\cpufiltruotas.txt
FOR /F "tokens=4" %%B IN (C:\Users\Diana\Desktop\ramvid.txt) DO echo %%B >> C:\Users\Diana\Desktop\ramvidfiltruotas.txt
for /F %%a in (C:\Users\Diana\Desktop\ramvidfiltruotas.txt) do set /a c+=%%a echo %c% >> C:\Users\Diana\Desktop\naujas.txt
我正在尝试计算文件ramvidfiltruotas.txt
中的数字总和,但是当我启动脚本时,它向我展示了很多这样的数据:
C:\Users\Diana>set /a c+=3472 echo 1>>C:\Users\Diana\Desktop\naujas.txt
Missing operator.
C:\Users\Diana>set /a c+=2616 echo 1>>C:\Users\Diana\Desktop\naujas.txt
Missing operator.
也许有人可以帮我在这里找到问题?
顺便说一下,这个脚本适用于其他计算机。
答案 0 :(得分:1)
您有两个命令一起运行。将set
和echo
分隔在不同的行上,或者将它们与&符号&
连接起来:
set /a c+=2616 & echo 1>>C:\Users\Diana\Desktop\naujas.txt