我有一个文件名为file1.txt。 我想从文件中读取,如果文件名包含“xyz”字符串我需要运行一些命令,如果不是一些其他命令 无法做到这一点,需要你的帮助,尝试了很多方法,但无法弄清楚 这里的示例代码我想:比较字符串中的for(if语句))
@echo off
setlocal EnableDelayedExpansion
for /F "tokens=1,2,3 delims=" %%i in (file1.txt) do (
set f=%%i
set z=XYZ
echo !f! >>test.txt
if /i "!f!" == "!z!" (
echo matched >> test.txt
) else (
echo nomatch >> test.txt
)
)
要比较一个字符串是否包含另外一个,你可以做这样的:'如果==“列“STRING!”:%SUB% =!”在“!STRING!”中找到echo子字符串“%SUB%”,或者使用['find'命令](http://ss64.com/nt/find.html):'find“%SUB% “”file1.txt“(只返回'file1.txt'中包含'%SUB%'中子字符串的行;添加'/ I'选项来区分大小写搜索) – aschipfl
很有意思在不到一小时内出现两个关于[同一主题](http://stackoverflow.com/q/43471346)的问题... – aschipfl
[如何将命令行参数传递给批处理文件?]( http://stackoverflow.com/questions/26551/how-to-pass-command-line-parameters-to-a-batch-file) –