shell三剑客sed之文件特定内容删除和替换


问题,首先针对如下文件内容,需要删除包含特定内容的行,一键替换文件内容达到最终目标

原始文件内容:

C91E-Test-92(config)#interface vlan632
C91E-Test-92(config-if-vlan632)#show this
!<if-intf>
ip address 20.0.132.1 255.255.255.0
ipv6 enable
ipv6 address 2409:8086:8311:278::ffff/64
interface mac-address 2222.3333.0084 anycast
!</if-intf>
!<nd>
ipv6 dad-attempts 0
ipv6 nd na-parse
!</nd>
C91E-Test-92(config-if-vlan632)#exit

目标内容:

interface vlan632

ip address 20.0.132.1 255.255.255.0
ipv6 enable
ipv6 address 2409:8086:8311:278::ffff/64
interface mac-address 2222.3333.0084 anycast
exit

 

步骤1:

将原始文件内容保存到文件501-750vlanconfigure.txt中,

步骤2:

删除包含“if-intf”、“config-if”、“dad-attempts”、“na-parse”、“/nd”的行

sed -i "/if-intf/d" 501-750vlanconfigure.txt

sed -i "/config-if/d" 501-750vlanconfigure.txt

sed -i "/dad-attempts/d" 501-750vlanconfigure.txt

sed -i "/na-parse/d" 501-750vlanconfigure.txt

sed -i "/\/nd/d" 501-750vlanconfigure.txt

步骤3:

关键字“C91E-Test-92(config)#”替换为空格

sed -i "s/C91E-Test-92(config)#//g" 501-750vlanconfigure.txt

步骤4:

关键字“!<nd>”替换为exit

sed -i "s/\!<nd>/exit/g" 501-750vlanconfigure.txt

sedi "/show/d" 501-750vlanconfigure.txt

步骤5:删除特定行及其后面行

sed -i "/Trying\ 10.230/,+9d" shutdown_noshutdown主物理端口60次.txt
sed -i "/Welcome\ to/,+4d" shutdown_noshutdown主物理端口60次.txt
sed -i "/Connection\ closed/d" shutdown_noshutdown主物理端口60次.txt
sed -i "/config\ terminal/,+3d" shutdown_noshutdown主物理端口60次.txt


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM