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 に答える