小编Sun*_*nny的帖子

使用SED交换一行中出现的多个单词和数字

我有一个大文件,每行显示:

OCCUPY 12 EVERY PIC 32(12) 
OCCUPY 45 EVERY PIC X(21) 
OCCUPY 98 EVERY PIC F(A0)
OCCUPY 21 EVERY PIC T(BC)
Run Code Online (Sandbox Code Playgroud)

所需的输出应为:

PIC 32(12) OCCUPY 12 EVERY 
PIC X(21) OCCUPY 45 EVERY
PIC F(A0) OCCUPY 98 EVERY
Run Code Online (Sandbox Code Playgroud)

等等。

因此,这只是一个示例,但是文件中有很多行,在PIC附近有不同的字符/数字,在OCCUPY附近有不同的数字。

到目前为止,我尝试执行:

sed -E 's/(.*OCCUPY\ )(0([A-Z]\([0-9])\)(.*EVERY\ )(.*PIC\ )(([0-9]\([0-9]+\))/\3\4\1\2/'
Run Code Online (Sandbox Code Playgroud)
sed -E 's/((OCCUPY )([A-Z]\([0-9]))\)(.*EVERY )(.*PIC)(([0-9]\([0-9]))/\3\4\1\2/'
Run Code Online (Sandbox Code Playgroud)

但是,它没有帮助。

我将不胜感激任何帮助!

shell scripting sed

2
推荐指数
1
解决办法
54
查看次数

标签 统计

scripting ×1

sed ×1

shell ×1