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

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)进行断句,变成多行,这样即可读取相应的值。

获取扫描到的essid方法

首先扫描后倒入到文件

 ./iwlist wlan0 scan > a.txt

然后用shell 获取ssid

cat a.txt grep "ESSID:" | sed 's/ //g'

 


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

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

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

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值