1

有一个基本的批处理脚本,它根据脚本中硬编码的内容更新带有用户 MAC 的 postgreSQL 表。当我运行它时,它认为两个 MAC 地址都不同,或者我的语法不起作用。我试过回显变量,它们看起来一样。

我哪里错了?

谢谢

@echo off

set mac=00:00:00:00
echo %mac%
set /p mac_address= Please enter the MAC address 
echo %mac_address%
if mac==mac_address (

set /p hostname= Please enter the server ip address 

echo "update license set lldld" >> run
SET PGPASSWORD=xxxxxxxxxx
postgresql\bin\psql -U postgres -h %hostname% -p 5434 -d jasperserver -a -f run
del run

) else (
Echo "Error with MAC code"
pause

    )
4

1 回答 1

2

该表达式if mac==mac_address比较文本macmac_address不是变量的内容。

您(几乎)总是需要用百分比或感叹号来扩展变量。

if "%mac%"=="%mac_address%" echo Same
于 2013-02-20T14:04:52.567 回答