这必须批量完成。
我需要能够读取输入文件,并解析出只包含特定字符串的行的某些部分,然后将其写入输出文件。例如:
input =test.properties file
SQL
Datamodel
sale_detail.sql
bpid_exclusion.sql
预期产出=
SQL
Datamodel
sale_detail.sql
bpid_exclusion.sql
这是我到目前为止所做的:
@setlocal enableextensions enabledelayedexpansion
set
log_filepath=PATH/config.sql
FOR /F "usebackq tokens=* delims=" %%A IN (test.properties) DO (
set temp=%%A
ECHO %%A >> %log_filepath%
我现在遇到的问题是,当我运行这个脚本时,它会打印完整的属性文件,但我想要的是在读取文件之后它应该检查文件中是否存在SQL这个词如果是,它应该检查下一个单词datamodel如果数据模型存在它应该打印下两行,即log_filepath中的sale_Detail.sql和bpid_exclusion.sql
答案 0 :(得分:0)
你的问题不清楚,但我猜你有一个带文件名的文件。如果文件中的文件名存在于目录中,则回显内容。如果是这种情况,请尝试这一点。
@echo off
Set "infile=%~dp0test1.properties"
set "log_filepath=d:\somedir\logfile.log"
for /f "delims=" %%a in (%infile%) do If exist "%%a" type "%%a" >> %log_filepath%