¿Cómo convertir varios MSG-ID a xml a la vez?

¿Cómo convertir varios MSG-ID a xml a la vez?

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

información relacionada