0

我有以下文件 repoinfo.tmp:

Revisión: 7 //(7 or any number)

我想找到数字 7 以创建增量备份

我的代码是:

SET LAST_REV=

for /f "usebackq tokens=1,2 delims=: " %%i in 

( find "Revision: " "%TEMP%\repoinfo.tmp") 做 (

SET LAST_REV=%%j

)

问题是我的输出是西班牙语和字符 ó 产生问题,也许我应该尝试使用 findstr 或正则表达式......

该文件完全包含:我只是获取comans输出并通过管道保存它。这就是为什么 out 不是 'ó'

Ruta: hardware
URL: http://localhost:800/hardware
Ra¡z del repositorio: http://localhost:800/hardware
UUID del repositorio: fc0eaf3c-dae0-114c-8de9-14799a96cf30
Revisi¢n: 8
Tipo de nodo: directorio
Autor del £ltimo cambio: ruben
Revisi¢n del £ltimo cambio: 8
Fecha de £ltimo cambio: 2012-10-16 17:26:39 +0200 (mar 16 de oct de 2012)

我更改了我的代码,现在它可以工作了,在 find 参数中我写了“Revisi¢n”并且它可以工作。

for /f "usebackq tokens=1,2 delims=: " %%i in 

( find "Revisi¢n: " "%TEMP%\repoinfo.tmp") 做 (

  SET LAST_REV=%%j

)
4

1 回答 1

0

根据您提供的信息,我建议使用带有 findstr 的正则表达式。让我知道以下代码的输出是否是您要查找的内容:

SET LAST_REV=
for /f "usebackq tokens=1,2 delims=: " %%i in (`findstr /brc:"Revisi.n: ." "%TEMP%\repoinfo.tmp"`) do (
SET LAST_REV=%%j
)
于 2012-10-16T18:43:07.497 回答