Ik heb een XML file, laten we zeggen de volgende:
Nu wil ik ik met een bash script het volgende bereiken:
1. Chunken van de file naar kleine XML files
2. En dan per XML file ongeveer 'x' aantal books
Ik heb lopen kloten met sed, awd, sgrep, etc. en mij meest "in de buurt"-komende script is het volgende:
Alleen deze zet dus effectief om elk boek een <books>-tag. Wie kan me even in de goede richting duwen? M'n huidige output is:
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
| <?xml version="1.0" encoding="utf-8" ?> <books> <book> <code></code> <text></text> </book> <book> <code></code> <text></text> </book> <book> <code></code> <text></text> </book> <book> <code></code> <text></text> </book> <book> <code></code> <text></text> </book> <book> <code></code> <text></text> </book> </books> |
Nu wil ik ik met een bash script het volgende bereiken:
1. Chunken van de file naar kleine XML files
2. En dan per XML file ongeveer 'x' aantal books
Ik heb lopen kloten met sed, awd, sgrep, etc. en mij meest "in de buurt"-komende script is het volgende:
code:
1
| sgrep -d -o "XXXSTART%rSTOPXXX" '"<book>" .. "</book>"' input.xml | sed -e 's/XXXSTART/<books>/g;s/STOPXXX/<\/books>/g' |
Alleen deze zet dus effectief om elk boek een <books>-tag. Wie kan me even in de goede richting duwen? M'n huidige output is:
code:
1
2
3
4
5
6
7
8
9
| <books><book> <code></code> <text></text> </book></books><books><book> <code></code> <text></text> </book></books><books><book> <titel>hier</title> </book></books> |
[ Voor 10% gewijzigd door smeerbartje op 04-07-2014 14:13 ]