Eu tenho um script que pode converter MSG-IDs (MSG-ID colocado em nosso banco de dados) em arquivos XML.
Aqui está 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 vez com nomes diferentes, se possível
Aqui uma parte disso
<?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>
Responder1
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. Presumo que você tenha seu conjunto de IDs de mensagens em uma lista. Na ausência de detalhes reais, presumo ainda que seus IDs de mensagens contêm apenas letras, números, hifens e sublinhados ( A-Z
, a-z
, 0-9
, -
, _
). Vamos chamar essa lista de ids.list
.
while IFS= read -r messageid
do
sed "s/#MESSAGEID#/$messageid/g" template.notxml > "$messageid.notxml"
done < ids.list