我有以下內容的XML文件:移動文本使用的sed
<query_1>false</query_1>
<query_2>true</query_2>
<query_3>true</query_3>
<query_4>false</query_4>
<query_5>false</query_5>
是否有可能使用SED重組的文件,因此它會拿起「真」,並將其輸出到像這樣一行:
<query>2,3</query>
問候, Irek
我有以下內容的XML文件:移動文本使用的sed
<query_1>false</query_1>
<query_2>true</query_2>
<query_3>true</query_3>
<query_4>false</query_4>
<query_5>false</query_5>
是否有可能使用SED重組的文件,因此它會拿起「真」,並將其輸出到像這樣一行:
<query>2,3</query>
問候, Irek
我想這不是最簡單的解決辦法,但你可以試試這個:
sed -n '/<query_[0-9]*>true<\/query/{:a;s/^<query_\([0-9]*\)>.*/\1/;tb;ba;:b;H};${g;s/^\n//;s/\n/,/g};$s/.*/<query>&<\/query>/p' file
使用您的示例文件的輸出是你想要什麼:
<query>2,3</query>
爲+1努力,我的眼睛傷害:-) – 2011-06-20 08:02:27
下面的命令序列返回您請求
$ grep true input | sed 's/>//g' | cut -d _ -f 3 | printf "<query>%s</query>" `paste -d, - -`
<query>2,3</query>
字符串得出:
<query>2,3</query>
絕它與sed完成?這對於Perl來說幾乎是微不足道的。 – 2011-06-15 10:19:53
告訴我們perl然後:) – Bohemian 2011-06-15 10:26:11