Linux 如何精准过滤关键字信息
- 0次
- 2021-06-17 21:05:13
- idczone
最近在学写一些简单的脚本,已会最简单的 grep 、awk 的用法,用得最多的就是 awk 的 print 去显示某列信息。今天遇到一种情况不知道怎么处理才好,请高手分享一下思路。
[[email protected] ~]# ssh -V
OpenSSH_7.4p1, OpenSSL 1.0.2k-fips 26 Jan 2017
我想单独把 7.4p1 过滤出来,不带多余信息,应该怎么做?
awk -F '_|,' '{print $2}'
ssh -V 2>&1 | grep -oP '(?<=OpenSSH_)\S+'
ssh -V 2>&1 |awk -F',' '{print $1}' |awk -F'_' '{print $2}'
ssh -V 2>&1 | cut -d '_' -f 2 | cut -d ',' -f 1 | cut -c 1-5
二楼有些瑕疵,fix 下(狗头
ssh -V 2>&1 | grep -oP '(?<=OpenSSH_)[\w.]+'
楼上给的 cut 挺好用的。
另外给下 powershell 下用法:
(ssh -V 2>&1).ToString().Split(',')[0].Split('_')[-1]