1、取本机ip地址
[root@ali ~]# ifconfig |egrep 'Bcast' |tr -s ' ' '\n' |head -n3 |tail -n1 |cut -d: -f2
2、取各分区利用率的数值
[root@ali ~]# df |egrep '^/dev/sd'
3、统计/etc/init.d/functions 文件中每个单词出现的次数,并按频率从高到低
[root@ali ~]# cat /etc/rc.d/init.d/functions |tr -cs '[:alpha:]' '\n' |sort |uniq -c |sort -nr
4、/etc/rc.d/init.d/functions或/etc/rc.d/init.d/functions/" 取目录名
[root@ali ~]# echo "/etc/rc.d/init.d/functions/" |grep -o "[/]\?.*[/]"
5、正则表达式表示身份证号
'[0-9]{15,18}' 134.txt
6、正则表达式表示手机号
^[1][0-9][0-9]{9}$
7、正则表达式表示邮箱
^[0-9]{9}@[[:alpha:]].*[[:alpha:]]$
8、正则表达式表示QQ号
[0-9]{9}
9、显示/proc/meminfo文件中以大小s开头的行; (要求:使用两种方式)
[root@ali ~]# cat /proc/meminfo |grep -i '^[s]'
[root@ali ~]# cat /proc/meminfo |grep '^[s|S]'
10、显示/etc/passwd文件中不以/bin/bash结尾的行
[root@ali ~]# cat /etc/passwd |grep -v '/bin/bash'
11、显示用户rpc默认的shell程序
[root@ali ~]# cat /etc/passwd |egrep '\<rpc\>' |cut -d: -f7
12、找出/etc/passwd中的两位或三位数
[root@ali ~]# cat /etc/passwd |grep '\<[1-9][0-9][0-9]\?\>'
[root@ali ~]# cat /etc/passwd |grep '\<[0-9]\{2,3\}\>'
13、显示/etc/grub2.cfg文件中,至少以一个空白字符开头的且后面存非空白字符的行
[root@ali ~]# grep '^[[:space:]]*[^[:space:]]' /etc/rc.d/init.d/functions
14、 找出“netstat -tan”命令的结果中以‘LISTEN’后跟任意多个空白字符结尾的行
[root@ali ~]# netstat -tan |grep 'LISTEN[[:space:]]*$'
15、添加用户bash、 testbash、 basher以及nologin(其shell为/sbin/nologin),而后找
出/etc/passwd文件中用户名同shell名的行
[root@ali ~]# cat /etc/passwd |grep '^\(.*\).*/\1$'
[root@ali ~]# grep '^\(.*\).*/\1$' /etc/passwd
17、查出分区空间使用率的最大百分比值
[root@ali ~]# df |grep '/dev/sda' |grep '\<[0-9]*%'
18、查出用户UID最大值的用户名、 UID及shell类型
[root@ali ~]# getent passwd |sort -nt: -k3 |cut -d: -f1,3,7 |tail -n1
19、查出/tmp的权限,以数字方式显示
[root@ali ~]# stat /tmp/ |cut -d: -f2 |head -n4 |tr -d '(' |cut -d/ -f1 |tail -n1
[root@ali ~]# stat /tmp/ |head -n4 |tail -n1 |tr ' ' '\n' |head -n2 |tr -cd '[:digit:]'
[root@ali ~]# stat -c %a /tmp/
20、统计当前连接本机的每个远程主机IP的连接数,并按从大到小排序
[root@ali ~]# netstat -nt |grep 'tcp' |tr -s ' ' '|' |cut -d'|' -f4 |uniq -c |sort -n
21、 显示三个用户root、 mage、 wang的UID和默认shell
[root@ali ~]# egrep '^\<root|mage|wang\>' /etc/passwd |cut -d: -f1,3,7
22、找出/etc/rc.d/init.d/functions文件中行首为某单词(包括下划线)后面跟一个小括号的行
[root@ali ~]# cat /etc/rc.d/init.d/functions |egrep '^[[:alpha:]_]+\(\)'
23、使用egrep取出/etc/rc.d/init.d/functions中其基名
[root@ali ~]# echo '/etc/rc.d/init.d/functions' |egrep -o '[^/]+/?$'
24、使用egrep取出上面路径的目录名
[root@ali ~]# echo '/etc/rc.d/init.d/functions' |egrep -o '(/.*/)'
25、统计以root身份登录的每个远程主机IP地址的登录次数
[root@ali ~]# last |egrep "^root\>.*([[:digit:]]{1,3}\.){3}[[:digit:]]{1,3}" |tr -s ' ' ':' |cut -d: -f3 |sort |uniq -c
28 10.1.250.14
1 172.18.19.209
26、利用扩展正则表达式分别表示0-9、 10-99、 100-199、200-249、 250-255
'(([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\.){3}([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])'
27、显示ifconfig命令结果中所有IPv4地址
[root@ali ~]# ifconfig |grep -E -o '(([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\.){3}([0-9]|[1-9][0-9]|1[0-9]
{2}|2[0-4][0-9]|25[0-5])'
原创文章,作者:M20-1马星,如若转载,请注明出处:http://www.178linux.com/30236