MSG-ID(DB에 있는 MSG-ID)를 XML 파일로 변환할 수 있는 스크립트가 있습니다.
하나의 MSID를 XML로 변환하는 예는 다음과 같습니다.
getDXML xxxxxMSGIDxxxxxx > filename.xml
이제 40개가 넘는 MSG-ID가 있고 가능하면 다른 이름으로 한꺼번에 변환하고 싶습니다.
여기 그 일부
<?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>
답변1
먼저 템플릿을 만듭니다.
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
이제 파일을 만듭니다. 목록에 메시지 ID 세트가 있다고 가정합니다. 실제 세부정보가 없으면 메시지 ID에 문자, 숫자, 하이픈 및 밑줄( A-Z
, a-z
, 0-9
, -
, _
)만 포함되어 있다고 가정합니다. 이 목록을 이라고 부르자 ids.list
.
while IFS= read -r messageid
do
sed "s/#MESSAGEID#/$messageid/g" template.notxml > "$messageid.notxml"
done < ids.list