9
我想根据包含给定字符串的文件中的行数设置变量。将变量设置为批处理文件中的“查找”结果
喜欢的东西:
set isComplete = 0
%isComplete% = find /c /i "Transfer Complete" "C:\ftp.LOG"
IF %isComplete% > 0 ECHO "Success" ELSE ECHO "Failure"
或者:
set isComplete = 0
find /c /i "Transfer Complete" "C:\ftp.LOG" | %isComplete%
IF %isComplete% > 0 ECHO "Success" ELSE ECHO "Failure"
既不这些选项工作,效果显着。
谢谢。
这是伟大的。但是,我应该提到,我需要这种方式来处理有空间的路径。引号似乎没有帮助。啊。所以... for/f“tokens = 3”%% f in('find/c/i“Transfer Complete”“C:\ test path \ ftp.LOG”')do set isComplete = %% f sets isComplete to“PATH \ FTP.LOG:”,其中的错误,我猜,是由空间造成的。 – MattH 2009-05-06 20:45:27
您需要使用for命令的“usebackq”选项,以便您可以将路径引用到路径中:for/f“usebackq tokens = 3”%% f in(`find/c/i“Transfer Complete”“C :\ test path \ ftp.log“`)do set isComplete %% f – 2009-05-07 00:21:50