Experts,
I have the test_123.xml file as below. I need to extract few of the lines and move it to result.txt file. There seem to be some issue in my code. Please help to fix this code to extract the required info.
<?xml version="1.0" encoding="ascii" ?>
<RunTimeModule Type="FlowManager">
<Id>3</Id>
<Name>test_123</Name>
<StandAlone>Y</StandAlone>
<Log>
<Mode>DEBUG</Mode>
<Path>/test01/log</Path>
<Retention>7</Retention>
</Log>
<UXCodes>
<System>UXtest510</System>
<User>UXtest510</User>
</UXCodes>
<Alert>
<Frequency>15</Frequency>
</Alert>
<FlowManager>
<LoopingFrequency>120</LoopingFrequency>
<ProcessAndTerminate>N</ProcessAndTerminate>
<CleanUpMemoryAfterProcess>Y</CleanUpMemoryAfterProcess>
<CleanUpMemoryThreshholdInMB>5</CleanUpMemoryThreshholdInMB>
<RetryAttempts>Infinite</RetryAttempts>
<Node Id="1" Name="SourceFtp">
<Adapter Type="Source" TypeName="Ftp" Module="ftp.dll"/>
<InputParameters>
<Parameter Name="FilePath" Value="/test_dev/TestSend/"/>
<Parameter Name="FileName" Value="*.txt"/>
<Parameter Name="MarkData">
<SubParameter Name="RenameFile" Value="Y"/>
</Parameter>
<Parameter Name="LogonAttempts" Value="10"/>
<Parameter Name="FtpProperties">
<SubParameter Name="HostIP" Value="192.168.10.5"/>
<SubParameter Name="HostName" Value="test01"/>
<SubParameter Name="UserId" Value="test01"/>
<SubParameter Name="Password" Value="_SSC_PASSWORD_AT_LOGIN"/>
<SubParameter Name="Port" Value="21"/>
<SubParameter Name="TransferMode" Value="ASCII"/>
<SubParameter Name="CheckFileSize" Value="N"/>
<SubParameter Name="ConnectionTimeOut" Value="540"/>
</Parameter>
</InputParameters>
</Node>
<Node Id="2" Name="DestinationPriceQ">
<Adapter Type="Destination" TypeName="MQ" Module="asmq.dll"/>
<InputParameters>
<Parameter Name="QueueManager" Value="QT0012"/>
<Parameter Name="Queue" Value="EPH.TEST.IN.OUT"/>
<Parameter Name="UseCCDT" Value="Y"/>
<Parameter Name="PutMessageOptions">
<SubParameter Name="Group:EnableMessageGrouping" Value="N"/>
</Parameter>
<Parameter Name="MQMD">
<SubParameter Name="Segmentation" Value="N"/>
<SubParameter Name="LogicalOrder" Value="N"/>
<SubParameter Name="Format" Value="MQSTR"/>
</Parameter>
<Parameter Name="$Data$" Map="Source.Ftp.1.$Data$"/>
</InputParameters>
</Node>
</FlowManager>
</RunTimeModule>
I need to extract the below 5 parameters:
<HostIP> <UserId> <FilePath> <FileName> <QueueManager>
Here is the code written to extract the 5 parameters from the xml file. But i am not getting the desired output from the below Batch script
@echo off
setlocal EnableDelayedExpansion
(for /F "delims=" %%a in ('findstr /I /L "<HostIP> <UserId> <FilePath> <FileName> <QueueManager>" H:\test_123.xml') do (
set "line=%%a"
set "line=!line:*<HostIP>=!"
set "line=!line:*<UserId>=!"
set "line=!line:*<FilePath>=!"
set "line=!line:*<FileName>=!"
set "line=!line:*<QueueManager>=!"
for /F "delims=<" %%b in ("!line!") do echo %%b
)
) > result.txt
result.txt file is not appending any data.
This is the Expected output from Node Id="1".
<SubParameter Name="HostIP" Value="192.168.10.5" />
<SubParameter Name="UserId" Value="test01" />
<Parameter Name="FilePath" Value="/test_dev/TestSend"/>
<Parameter Name="FileName" Value="*.txt" />
This is the Expected output from Node Id="2"
<Parameter Name="QueueManager" Value="QT0012"/>