我希望交换两行代码,但只有当它们的顺序不正确时才这样做。例如,如果在XML文件中有以下代码行(可以出现在文件的任何位置,不一定是特定位置):
<person>
<given-name>John</given-name>
<surname>Smith</surname>
</person>
我想要交换第二行和第三行,使其输出为
<person>
<surname>Smith</surname>
<given-name>John</given-name>
</person>
但仅适用于那些行顺序混乱的文件。有没有一种用sed或其他Linux工具来实现的方法?
<姓>
接着<名>
,而不是反过来。 - Jonathan