gpt4 book ai didi

linux - 如何在 Linux 中更改文本顺序?

转载 作者:太空宇宙 更新时间:2023-11-04 12:35:58 26 4
gpt4 key购买 nike

Linux 中的文本文件中有 3 个更新,我只想像下面那样更改那里的顺序,sed 或 awk 也已经尝试过但听起来很复杂,也许我可以在记事本中完成它,但任何解决方法都只是使用常规在 linux 中的表达?谢谢。

原创:

    UPDATE `test`.`t1`
SET
id=1 ,
name='daiiy' ,
sex=2 ,
address='guangzhou'
WHERE
id=1 ;



UPDATE `test`.`t2`
SET
id=2 ,
name='tom' ,
sex=1 ,
address='shanghai'
WHERE
id=2 ;



UPDATE `test`.`t3`
SET
id=3 ,
name='liany' ,
sex=2 ,
address='beijing'
WHERE
id=3 ;

如何更改为:

    UPDATE `test`.`t3`
SET
id=3 ,
name='liany' ,
sex=2 ,
address='beijing'
WHERE
id=3 ;


UPDATE `test`.`t2`
SET
id=2 ,
name='tom' ,
sex=1 ,
address='shanghai'
WHERE
id=2 ;

UPDATE `test`.`t1`
SET
id=1 ,
name='daiiy' ,
sex=2 ,
address='guangzhou'
WHERE
id=1 ;

最佳答案

如果您有权访问 perl,您可以执行以下操作..

    perl -0pe 's/(.*)^(.*)UPDATE(.*);(.*)UPDATE(.*);(.*)UPDATE(.*);(.*)/\2UPDATE\7;\n\n\2UPDATE\5;\n\n\2UPDATE\3;\n\n/s' input.txt

注意:这假定所有三个记录的缩进相同。

关于linux - 如何在 Linux 中更改文本顺序?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41819381/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com