i have an input string like this
<keywords>key word 1, key word 2, key word 3, key word 4, key word 5, key word 6, .. </keywords>
there could be up to 10 keywords i have tor transform this to the following xml structure
<keyword1>key word 1</keyword1>
<keyword2>key word 2</keyword2>
<keyword3>key word 3</keyword3>
<keyword4>key word 4</keyword4>
<keyword5>key word 5</keyword5>
<keyword6>key word 6</keyword6>
<keyword7>...</keyword7>
the rest of my script are simple sed / awk commands to replace tags but nothing else. have someone an idea how i could convert it to the desired structure? thx for any advice
Update:
i tried the followoing (from this post )
echo "<keywords>key word 1, key word 2, key word 3, key word 4, key word 5 </keywords>" | awk '{split($0,a,","); print "<keyword1>"a[1]"</keyword1>\n<keyword2>"a[2]"</keyword2>\n<keyword3>"a[3]"</keyword3>\n<keyword4>"a[4]"</keyword4>\n<keyword5>"a[5]"</keyword5>\n<keyword6>"a[6]"</keyword6>\n<keyword7>"a[7]"</keyword7>\n<keyword8>"a[8]"</keyword8>\n<keyword9>"a[9]"</keyword9>\n<keyword10>"a[10]"</keyword10>\n"}' | sed -e 's/<keywords>//g' |sed -e 's/<\/keywords>//g'
it works quide good, here the output:
<keyword1>key word 1</keyword1>
<keyword2> key word 2</keyword2>
<keyword3> key word 3</keyword3>
<keyword4> key word 4</keyword4>
<keyword5> key word 5 </keyword5>
<keyword6></keyword6>
<keyword7></keyword7>
<keyword8></keyword8>
<keyword9></keyword9>
<keyword10></keyword10>
maybe it's not the best method... but it works. if you have better / faster solution I would appreciate it…
2 Update:
is there a chance to execute the awk / sed command only for the text between /<keywords>/,/<\/keywords>/