1 、取本机ip地址
Centos6.8
ifconfig | head -2|tail -1|cut -d: -f2|cut -d" " -f1
ifconfig | head -2|tail -1|cut -d: -f2|cut -dB -f1
Centos7.2
ifconfig|head -2|tail -1|cut -dt -f2|cut -d" " -f2
2 、查出分区空间使用率的最大百分比值
df|tr -s " "|cut -d" " -f5|tr -d '%'|tail -n +2
3 、查出用户UID 最大值的用户名、UID 及shell 类型
getent passwd|sort -n -t: -k3|cut -d: -f1,3,7|tail -1
4 、查出/tmp 的权限,以数字方式显示
stat /tmp|head -n 4|tail -n +4|cut -d\( -f2|cut -d\/ -f1
5 、统计当前连接本机的每个远程主机IP 的连接数,并按从大到小排序
netstat -nt|tr -s " "|cut -d" " -f5|cut -d: -f1|tail -n +3|sort|uniq -c|sort -n -r
6 、显示/proc/meminfo 文件中以大小s 开头的行;( 要求:使用两种方式)
grep "^[Ss]" /proc/meminfo
egrep "^(S|s)" /proc/meminfo
grep -i "^s" /proc/memsinfo
7、显示/etc/passwd 文件中不以/bin/bash 结尾的行
grep -v /bin/bash$ /etc/passwd
8、显示用户rpc 默认的shell 程序
grep "^rpc\>" /etc/passwd|cut -d: -f7
9 、找出/etc/passwd 中的两位或三位数
egrep -o "([[:digit:]]{2,3})" /etc/passwd
10、显示/etc/grub2.cfg 文件中,至少以一个空白字符开头的且后面存非空白字符的行
egrep "^[[:space:]]+[^[:space:]]" /etc/grub2.cfg
11、找出“netstat -tan” 命令 的结果 中以‘LISTEN’ 后跟任意多个空白字符结尾的行
netstat -tan|egrep "(LISTEN)[[:space:]]*$"
12 、添加用户bash 、testbash 、basher 以及nologin( 其shell为 为/sbin/nologin), 而后找出/etc/passwd 文件中用户名同shell名的行
egrep "^([[:alnum:]]*):.*\1$" /etc/passwd
13、统计/etc/init.d/functions 文件中每个单词出现的次数,并按频率从高到低显示
cat /etc/init.d/functions |egrep -o "([[:alpha:]]*)" |sort|uniq -c|sort -n -r
14、/etc/rc.d/init.d/functions或/etc/rc.d/init.d/functions/" 取目录名或基名
echo "/testdir/dir/dir1/" | egrep -o ".*/\<" #目录名
echo "/testdir/dir/dir1/" | egrep -o "([^/]+\/?)$" #基名
15、正则表达式表示×××号
egrep "\<((1[1-5])|(2[1-3])|(3[1-7])|(4[1-6])|(5[0-4])|(6[1-5])|(71|81|82))([0-9]){4}(19|20)([0-9]){2}((0[1-9])|(1[0-2]))(0[1-9]|(1[0-9])|(2[0-9])|(3[0-1]))([0-9]){3}([0-9]|X)\>" filename
16、正则表达式表示手机号
grep -E -o "(\+86)?1[38][0-9]{9}|14[57][0-9]{8}|15[0-35-9][0-9]{8}|17[0678][0-9]{8}" shoujihao
17、正则表达式表示邮箱
egrep "\<([[:alnum:]]+(-|_)*[[:alnum:]]*)\>@([[:alnum:]]+\.)+[[:alnum:]]+" mail grep -E -o '[a-zA-Z0-9]+[[:alnum:]\.\_-]*@[a-zA-Z0-9]+[[:alnum:]\.\_-]*' mail
18、正则表达式表示QQ号
grep -E -o '\b[1-9][0-9]{4,12}\b' QQ