"DEBUG MDM payload:"のような複数の行を持つログファイルがあり、その後に別々の行に長さが異なるxmlコンテンツがありますが、 。どのように私はユーザーtrとsedまたは別の方法で "DEBUG MDM payload:"と同じ行のすべてのXMLコンテンツを結合できますか?xml値のログファイルをスキャンして1行にまとめる方法
2017-01-26T10:54:28.712+0100 - CORE {wff-device-thread-15 : deviceRestExecuteWorkflow.deviceRestExecuteActivity.EventQueueConsumer} device.ios.management|logger [{{Correlation,dhdjwdw-3a44-4b0d-aa52-dwdwdwdwdw}{Uri,PUT /S29112264/ios/mdm2/dwdwdwdw-c7d2-465c-be44-dwdwdwdw}{host,de0-server.name.fqdn}}] - DEBUG MDM payload:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>Command</key>
<string>dd2c2a59-2007-4863-9c8c-dgfhgfh666666</string>
<key>command</key>
<dict/>
<key>Status</key>
<string>Approved</string>
<key>UDID</key>
<string>90f0c56287474782748274827487842cc64c2fc4</string>
</dict>
</plist>
アップデート:次のコマンドは、私が欲しいものを印刷して、それを取ってファイルを改行して1行にする方法を示します。
sed -n "/\/ios\/mdm2\DEBUG MDM payload/,/<\/plist>/p"
更新2:もう少しいいですが、まだいくつかのタブがあります。次にタブを削除する方法を見つけようとしています。
sed -n "/DEBUG MDM payload/,/<\/plist>/p" fake_log.txt | tr -d "\r" | tr -d "\n"
更新3:OK、取得しました。今、既存の回線を削除し、この新しく変更された回線をその場所に追加する方法はありますか?
sed -n "/DEBUG MDM payload/,/<\/plist>/p" fake_log.txt | tr -d "\r" | tr -d "\n" | tr -d "\t"
'\ n <'を '<'に置き換えてみましたか? –