0

コマンドラインで実行する場合:

c:\digitemp.exe -t0 -o%C -q  > res1.txt

res1.txt摂氏の数値温度が正しく含まれています(たとえば、24.23456)。しかし、同じコマンドがbatファイル内で実行された場合(たとえば、test.bat):

@ECHO OFF
ECHO Hola pootol!
ECHO.
c:\digitemp.exe -t0 -o%C -q  > res1.txt 
rem set pootol = < res1.txt
rem set pootol
ECHO Prem una tecla per sortir.
pause > null

res1.txtには、引数に関連していると思われる間違った摂氏値が含まれています" -o%C "。ご覧remのとおり、変数の割り当て原因 pootol var は、言及される前に摂氏の値が間違って割り当てられています。私は何を間違っていますか?

4

2 に答える 2

0

バッチファイル%では、変数を示すために使用されます。したがって%C、バッチファイル内で変数として解釈され、その値に置き換えられます。値がないため、空の文字列に置き換えられます。

インタプリタがを通常の文字として扱うように、キャレット^文字を使用してエスケープします。%%

c:\digitemp.exe -t0 -o^%C -q  > res1.txt 
于 2012-06-10T17:17:33.630 に答える