Como converter vários MSG-IDs em xml de uma só vez? [fechadas]

0

Eu tenho um script que pode converter MSG-IDs (MSG-ID colocados em nosso banco de dados) em arquivos XML.

Aqui um exemplo para converter um MSID em XML

getDXML xxxxxMSGIDxxxxxx > filename.xml 

agora tenho mais de 40 MSG-IDs e quero convertê-los todos de uma só vez com nomes diferentes, se possível

Aqui uma parte dela

<?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>
    
por ramadnay 23.11.2017 / 13:51

1 resposta

1

Primeiro crie o modelo

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

Agora crie os arquivos. Eu suponho que você tenha seu conjunto de IDs de mensagens em uma lista. Na ausência de detalhes reais, presumo ainda que os seus IDs de Mensagem contenham apenas letras, números, hifens e sublinhados ( A-Z , a-z , 0-9 , - , _ ). Vamos chamar essa lista ids.list .

while IFS= read -r messageid
do
    sed "s/#MESSAGEID#/$messageid/g" template.notxml > "$messageid.notxml"
done < ids.list
    
por 23.11.2017 / 15:21