我试图删除特定匹配模式后的所有字符,即nfin
到行尾。
xxsac00mi126 vddai:f1042 tkeept_iph xsac00.f1040 vdda lvtpfet m=1 nf=1 nfin=2 pdej=1.6e-07 asej=3.2e-16 lrsd=4e-08 pre_layout_local=0
Run Code Online (Sandbox Code Playgroud)
sed -i "s/nfin\=[0-9].*//g" sample_text
Run Code Online (Sandbox Code Playgroud)
xxsac00mi126 vddai:f1042 tkeept_iph xsac00.f1040 vdda lvtpfet m=1 nf=1 nfin=2
Run Code Online (Sandbox Code Playgroud)
试试这个sed
:
sed -E 's/ pdej.*$//'
Run Code Online (Sandbox Code Playgroud)
例子:
sed -E 's/ pdej.*$//' file.txt
xxsac00mi126 vddai:f1042 tkeept_iph xsac00.f1040 vdda lvtpfet m=1 nf=1 nfin=2
Run Code Online (Sandbox Code Playgroud)
其中file.txt
包含:
cat file.txt
xxsac00mi126 vddai:f1042 tkeept_iph xsac00.f1040 vdda lvtpfet m=1 nf=1 nfin=2 pdej=1.6e-07 asej=3.2e-16 lrsd=4e-08 pre_layout_local=0
Run Code Online (Sandbox Code Playgroud)
或:
如果您想(需要)nfin
用作各种锚点,请使用:
sed -E 's/(.*nfin=[0-9]).*/\1/' file.txt
xxsac00mi126 vddai:f1042 tkeept_iph xsac00.f1040 vdda lvtpfet m=1 nf=1 nfin=2
Run Code Online (Sandbox Code Playgroud)