Tengo un script que puede convertir MSG-ID (MSG-ID colocado en nuestra base de datos) en archivos XML.
Aquí un ejemplo para convertir un MSID a XML
getDXML xxxxxMSGIDxxxxxx > filename.xml
ahora tengo más de 40 MSG-ID y quiero convertirlos todos a la vez con nombres diferentes, si es posible
Aquí una parte de ello.
<?xml version="1.0" encoding="UTF-8"?>
<message schemaLocation="http://postfinance.ch/deva/message BANCS_DEVA_Message.xsd">
<MessageHeader>
<MandantID>001001</MandantID>
<MessageID>**201711221731-A_DEVA_ADHCORDNTF_AA-10500879**</MessageID>
<Sender>BOMC</Sender>
<SenderPlattform>T</SenderPlattform>
<MessageType>00761</MessageType>
<Receiver>DEVA</Receiver>
<CommPattern>FF</CommPattern>
<Prioritaet>normal</Prioritaet>
</MessageHeader>
<sendung>
<ProcessingHeader>
Respuesta1
Primero crea la plantilla.
cat >template.notxml <<'X'
<?xml version="1.0" encoding="UTF-8"?>
<message schemaLocation="http://postfinance.ch/deva/message BANCS_DEVA_Message.xsd">
<MessageHeader>
<MandantID>001001</MandantID>
<MessageID>#MESSAGEID#</MessageID>
<Sender>BOMC</Sender>
<SenderPlattform>T</SenderPlattform>
<MessageType>00761</MessageType>
<Receiver>DEVA</Receiver>
<CommPattern>FF</CommPattern>
<Prioritaet>normal</Prioritaet>
</MessageHeader>
<sendung>
<ProcessingHeader>
X
Ahora crea los archivos. Supongo que tiene su conjunto de ID de mensajes en una lista. En ausencia de detalles reales, asumo además que sus ID de mensajes contienen solo letras, números, guiones y guiones bajos ( A-Z
, a-z
, 0-9
, -
, _
). Llamemos a esta lista ids.list
.
while IFS= read -r messageid
do
sed "s/#MESSAGEID#/$messageid/g" template.notxml > "$messageid.notxml"
done < ids.list