删除所有正则表达式匹配的行
Delete ALL Regex Matched Line
这是我的文件:
remark goes here
MASS
Pd 0.000 0.000 ATTN, need revision
ns 14.010 0.530 same as n
BOND
Pd-cl 0.00 0.000 ATTN, need revision
Pd-na 0.00 0.000 ATTN, need revision
c -ns 427.60 1.379 same as c -n
ns-hn 403.20 1.013 same as hn-n
ns-c3 328.70 1.462 same as c3-n
ANGLE
Pd-na-c2 0.000 0.000 ATTN, need revision
Pd-na-cc 0.000 0.000 same as Pd-na-c2
cl-Pd-na 0.000 0.000 ATTN, need revision
cl-Pd-cl 0.000 0.000 ATTN, need revision
na-Pd-na 0.000 0.000 ATTN, need revision
c2-c -ns 69.957 115.170 Calculated with empirical approach
cc-c2-c 67.710 120.700 same as c -c2-c2
c -ns-hn 48.330 117.550 same as c -n -hn
c -ns-c3 63.390 120.690 same as c -n -c3
o -c -ns 74.220 123.050 same as n -c -o
ns-c3-h1 49.840 108.880 same as h1-c3-n
hn-ns-c3 45.800 117.680 same as c3-n -hn
DIHE
cl-Pd-na-c2 1 0.000 0.000 0.000 ATTN, need revision
cl-Pd-na-cc 1 -nan 0.000 0.000 same as cl-Pd-na-c2
na-Pd-na-c2 1 0.000 0.000 0.000 ATTN, need revision
na-Pd-na-cc 1 0.000 0.000 0.000 ATTN, need revision
c2-c2-cc-ha 1 6.650 180.000 2.000 same as X -c2-ce-X
c2-c2-cc-cd 1 6.650 180.000 2.000 same as X -c2-ce-X
c2-c -ns-hn 1 2.500 180.000 2.000 same as X -c -n -X
c2-c -ns-c3 1 2.500 180.000 2.000 same as X -c -n -X
ha-cc-c2-c 1 6.650 180.000 2.000 same as X -c2-ce-X
cd-cc-c2-c 1 6.650 180.000 2.000 same as X -c2-ce-X
c -ns-c3-h1 1 0.000 0.000 2.000 same as X -c3-n -X
o -c -ns-hn 1 2.500 180.000 -2.000 same as hn-n -c -o
o -c -ns-hn 1 2.000 0.000 1.000 same as hn-n -c -o
o -c -ns-c3 1 2.500 180.000 2.000 same as X -c -n -X
hn-ns-c3-h1 1 0.000 0.000 2.000 same as X -c3-n -X
IMPROPER
Pd-c2-na-cc 1.1 180.0 2.0 Using default value
c2-h4-c2-na 1.1 180.0 2.0 Using default value
c -c2-c2-cc 1.1 180.0 2.0 Using default value
c2-cd-cc-ha 1.1 180.0 2.0 Using default value
cc-cc-cd-ha 1.1 180.0 2.0 Using default value
cd-h4-cc-na 1.1 180.0 2.0 Using default value
c2-ns-c -o 10.5 180.0 2.0 General improper torsional angle (2 general atom types)
c -c3-ns-hn 1.1 180.0 2.0 Using default value
NONBON
Pd 0.0000 0.0000 ATTN, need revision
ns 1.8240 0.1700 same as n
在这个文件中我想删除所有包含
“ATTN, need revision
”行和“0.000 same as
”(在 as 和 0.000 之间可能有 2 到 10 个 space 字符 0.000+ {2,10} same as
)
我成功地应用了这个命令:
sed -i '/ATTN, need revision/d' check2.dat
然后我也需要删除匹配的这一行:0.000+ {2,10} same as
我应用了这段代码,但没有用:sed -i.old '/0.000+ {2,10} same as /d' check2.dat
我该怎么做?或者我哪里做错了?
谢谢..
我的目标最终文件在这里:
remark goes here
MASS
ns 14.010 0.530 same as n
BOND
c -ns 427.60 1.379 same as c -n
ns-hn 403.20 1.013 same as hn-n
ns-c3 328.70 1.462 same as c3-n
ANGLE
c2-c -ns 69.957 115.170 Calculated with empirical approach
cc-c2-c 67.710 120.700 same as c -c2-c2
c -ns-hn 48.330 117.550 same as c -n -hn
c -ns-c3 63.390 120.690 same as c -n -c3
o -c -ns 74.220 123.050 same as n -c -o
ns-c3-h1 49.840 108.880 same as h1-c3-n
hn-ns-c3 45.800 117.680 same as c3-n -hn
DIHE
c2-c2-cc-ha 1 6.650 180.000 2.000 same as X -c2-ce-X
c2-c2-cc-cd 1 6.650 180.000 2.000 same as X -c2-ce-X
c2-c -ns-hn 1 2.500 180.000 2.000 same as X -c -n -X
c2-c -ns-c3 1 2.500 180.000 2.000 same as X -c -n -X
ha-cc-c2-c 1 6.650 180.000 2.000 same as X -c2-ce-X
cd-cc-c2-c 1 6.650 180.000 2.000 same as X -c2-ce-X
c -ns-c3-h1 1 0.000 0.000 2.000 same as X -c3-n -X
o -c -ns-hn 1 2.500 180.000 -2.000 same as hn-n -c -o
o -c -ns-hn 1 2.000 0.000 1.000 same as hn-n -c -o
o -c -ns-c3 1 2.500 180.000 2.000 same as X -c -n -X
hn-ns-c3-h1 1 0.000 0.000 2.000 same as X -c3-n -X
IMPROPER
Pd-c2-na-cc 1.1 180.0 2.0 Using default value
c2-h4-c2-na 1.1 180.0 2.0 Using default value
c -c2-c2-cc 1.1 180.0 2.0 Using default value
c2-cd-cc-ha 1.1 180.0 2.0 Using default value
cc-cc-cd-ha 1.1 180.0 2.0 Using default value
cd-h4-cc-na 1.1 180.0 2.0 Using default value
c2-ns-c -o 10.5 180.0 2.0 General improper torsional angle (2 general atom types)
c -c3-ns-hn 1.1 180.0 2.0 Using default value
NONBON
ns 1.8240 0.1700 same as n
有了 GNU sed,你可以使用
sed -E -i '/ATTN, need revision|0\.000[[:blank:]]+same as/d' check2.dat
sed -E -i '/ATTN, need revision|\<0\.000[[:blank:]]+same as/d' check2.dat
#!/bin/bash
s='Pd-na-c2 0.000 0.000 ATTN, need revision
Pd-na-cc 0.000 0.000 same as Pd-na-c2
cl-Pd-na 0.000 0.000 ATTN, need revision
cl-Pd-cl 0.000 0.000 ATTN, need revision
na-Pd-na 0.000 0.000 ATTN, need revision
c2-c -ns 69.957 115.170 Calculated with empirical approach'
sed -E '/ATTN, need revision|0\.000[[:blank:]]+same as/d' <<< "$s"
## => c2-c -ns 69.957 115.170 Calculated with empirical approach
POSIX ERE 正则表达式匹配
ATTN, need revision
- 固定字符串
|
- 或
\<
- left-hand 字边界
0\.000
- 0.000
[[:blank:]]+
- 一个或多个水平空格
same as
- 固定字符串。
这是我的文件:
remark goes here
MASS
Pd 0.000 0.000 ATTN, need revision
ns 14.010 0.530 same as n
BOND
Pd-cl 0.00 0.000 ATTN, need revision
Pd-na 0.00 0.000 ATTN, need revision
c -ns 427.60 1.379 same as c -n
ns-hn 403.20 1.013 same as hn-n
ns-c3 328.70 1.462 same as c3-n
ANGLE
Pd-na-c2 0.000 0.000 ATTN, need revision
Pd-na-cc 0.000 0.000 same as Pd-na-c2
cl-Pd-na 0.000 0.000 ATTN, need revision
cl-Pd-cl 0.000 0.000 ATTN, need revision
na-Pd-na 0.000 0.000 ATTN, need revision
c2-c -ns 69.957 115.170 Calculated with empirical approach
cc-c2-c 67.710 120.700 same as c -c2-c2
c -ns-hn 48.330 117.550 same as c -n -hn
c -ns-c3 63.390 120.690 same as c -n -c3
o -c -ns 74.220 123.050 same as n -c -o
ns-c3-h1 49.840 108.880 same as h1-c3-n
hn-ns-c3 45.800 117.680 same as c3-n -hn
DIHE
cl-Pd-na-c2 1 0.000 0.000 0.000 ATTN, need revision
cl-Pd-na-cc 1 -nan 0.000 0.000 same as cl-Pd-na-c2
na-Pd-na-c2 1 0.000 0.000 0.000 ATTN, need revision
na-Pd-na-cc 1 0.000 0.000 0.000 ATTN, need revision
c2-c2-cc-ha 1 6.650 180.000 2.000 same as X -c2-ce-X
c2-c2-cc-cd 1 6.650 180.000 2.000 same as X -c2-ce-X
c2-c -ns-hn 1 2.500 180.000 2.000 same as X -c -n -X
c2-c -ns-c3 1 2.500 180.000 2.000 same as X -c -n -X
ha-cc-c2-c 1 6.650 180.000 2.000 same as X -c2-ce-X
cd-cc-c2-c 1 6.650 180.000 2.000 same as X -c2-ce-X
c -ns-c3-h1 1 0.000 0.000 2.000 same as X -c3-n -X
o -c -ns-hn 1 2.500 180.000 -2.000 same as hn-n -c -o
o -c -ns-hn 1 2.000 0.000 1.000 same as hn-n -c -o
o -c -ns-c3 1 2.500 180.000 2.000 same as X -c -n -X
hn-ns-c3-h1 1 0.000 0.000 2.000 same as X -c3-n -X
IMPROPER
Pd-c2-na-cc 1.1 180.0 2.0 Using default value
c2-h4-c2-na 1.1 180.0 2.0 Using default value
c -c2-c2-cc 1.1 180.0 2.0 Using default value
c2-cd-cc-ha 1.1 180.0 2.0 Using default value
cc-cc-cd-ha 1.1 180.0 2.0 Using default value
cd-h4-cc-na 1.1 180.0 2.0 Using default value
c2-ns-c -o 10.5 180.0 2.0 General improper torsional angle (2 general atom types)
c -c3-ns-hn 1.1 180.0 2.0 Using default value
NONBON
Pd 0.0000 0.0000 ATTN, need revision
ns 1.8240 0.1700 same as n
在这个文件中我想删除所有包含
“ATTN, need revision
”行和“0.000 same as
”(在 as 和 0.000 之间可能有 2 到 10 个 space 字符 0.000+ {2,10} same as
)
我成功地应用了这个命令:
sed -i '/ATTN, need revision/d' check2.dat
然后我也需要删除匹配的这一行:0.000+ {2,10} same as
我应用了这段代码,但没有用:sed -i.old '/0.000+ {2,10} same as /d' check2.dat
我该怎么做?或者我哪里做错了?
谢谢..
我的目标最终文件在这里:
remark goes here
MASS
ns 14.010 0.530 same as n
BOND
c -ns 427.60 1.379 same as c -n
ns-hn 403.20 1.013 same as hn-n
ns-c3 328.70 1.462 same as c3-n
ANGLE
c2-c -ns 69.957 115.170 Calculated with empirical approach
cc-c2-c 67.710 120.700 same as c -c2-c2
c -ns-hn 48.330 117.550 same as c -n -hn
c -ns-c3 63.390 120.690 same as c -n -c3
o -c -ns 74.220 123.050 same as n -c -o
ns-c3-h1 49.840 108.880 same as h1-c3-n
hn-ns-c3 45.800 117.680 same as c3-n -hn
DIHE
c2-c2-cc-ha 1 6.650 180.000 2.000 same as X -c2-ce-X
c2-c2-cc-cd 1 6.650 180.000 2.000 same as X -c2-ce-X
c2-c -ns-hn 1 2.500 180.000 2.000 same as X -c -n -X
c2-c -ns-c3 1 2.500 180.000 2.000 same as X -c -n -X
ha-cc-c2-c 1 6.650 180.000 2.000 same as X -c2-ce-X
cd-cc-c2-c 1 6.650 180.000 2.000 same as X -c2-ce-X
c -ns-c3-h1 1 0.000 0.000 2.000 same as X -c3-n -X
o -c -ns-hn 1 2.500 180.000 -2.000 same as hn-n -c -o
o -c -ns-hn 1 2.000 0.000 1.000 same as hn-n -c -o
o -c -ns-c3 1 2.500 180.000 2.000 same as X -c -n -X
hn-ns-c3-h1 1 0.000 0.000 2.000 same as X -c3-n -X
IMPROPER
Pd-c2-na-cc 1.1 180.0 2.0 Using default value
c2-h4-c2-na 1.1 180.0 2.0 Using default value
c -c2-c2-cc 1.1 180.0 2.0 Using default value
c2-cd-cc-ha 1.1 180.0 2.0 Using default value
cc-cc-cd-ha 1.1 180.0 2.0 Using default value
cd-h4-cc-na 1.1 180.0 2.0 Using default value
c2-ns-c -o 10.5 180.0 2.0 General improper torsional angle (2 general atom types)
c -c3-ns-hn 1.1 180.0 2.0 Using default value
NONBON
ns 1.8240 0.1700 same as n
有了 GNU sed,你可以使用
sed -E -i '/ATTN, need revision|0\.000[[:blank:]]+same as/d' check2.dat
sed -E -i '/ATTN, need revision|\<0\.000[[:blank:]]+same as/d' check2.dat
#!/bin/bash
s='Pd-na-c2 0.000 0.000 ATTN, need revision
Pd-na-cc 0.000 0.000 same as Pd-na-c2
cl-Pd-na 0.000 0.000 ATTN, need revision
cl-Pd-cl 0.000 0.000 ATTN, need revision
na-Pd-na 0.000 0.000 ATTN, need revision
c2-c -ns 69.957 115.170 Calculated with empirical approach'
sed -E '/ATTN, need revision|0\.000[[:blank:]]+same as/d' <<< "$s"
## => c2-c -ns 69.957 115.170 Calculated with empirical approach
POSIX ERE 正则表达式匹配
ATTN, need revision
- 固定字符串|
- 或\<
- left-hand 字边界0\.000
-0.000
[[:blank:]]+
- 一个或多个水平空格same as
- 固定字符串。