shell技巧(sed 断句、读取指定行)


在对文本进行处理时,发现用脚本来处理的时候非常方便,将一些记录记载下来:

1、断句,(同行有多个字段需要读取时特别管用)


原文本:
Cell 04 - Address: 14:E6:E4:E3:E8:68
                    Protocol:802.11b/g/n
                    ESSID:"Sunshine_Mercury"
                    Mode:Managed
                    Frequency:2.412 GHz (Channel 1)
                    Quality:68/100  Signal level:-63 dBm  Noise level:-92 dBm
                    Encryption key : on
                    Bit Rates:54 Mb/s
                    IE: WPA Version 1
                        Group Cipher : CCMP
                        Pairwise Ciphers (1) : CCMP
                        Authentication Suites (1) : PSK
                    IE: IEEE 802.11i/WPA2 Version 1
                        Group Cipher : CCMP
                        Pairwise Ciphers (1) : CCMP
                        Authentication Suites (1) : PSK

 

使用命令:cat /etc/iwlist | sed -e 's/Noise\|Signal/\n&/g' | grep "Signal level:" | sed 's/ //g'

“cat /etc/iwlist | sed -e 's/Noise\|Signal/\n&/g' ”将同一行(Quality:68/100  Signal level:-63 dBm  Noise level:-92 dBm)进行断句,变成多行,这样即可读取相应的值。


2、shell读取文件的指定行字符串

在得到数行输出时,需要得到指定行的字段,可以使用该指令。

sed -n Np 文件名
如sed -n 2p xxx 输出结果即为第二行的内容。


免责声明!

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



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