1、找出ifconfig命令結果中本機的所有ipv4地址
[root@centos7 ~]# 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])' 192.168.226.133 255.255.255.0 192.168.226.255 10.1.249.40 255.255.0.0 10.1.255.255 127.0.0.1 255.0.0.0 192.168.122.1 255.255.255.0 192.168.122.255 [root@centos7 ~]# [root@centos7 ~]# ifconfig | grep -o -E '\<([0-9]|[1-9][0-9]|2[0-4][0-9]|25[0-5])\>\.\<([0-9]|[1-9][0-9]|2[0-4][0-9]|25[0-5])\>\.\<([0-9]|[1-9][0-9]|2[0-4][0-9]|25[0-5])\>\.\<([0-9]|[1-9][0-9]|2[0-4][0-9]|25[0-5])\>' 255.255.255.0 10.1.249.40 255.255.0.0 10.1.255.255 255.0.0.0 255.255.255.0 [root@centos7 ~]# ifconfig|egrep -o '(\<([0-9]|[1-9][0-9]|2[0-4][0-9]|25[0-5])\>\.){3}\<([0-9]|[1-9][0-9]|2[0-4][0-9]|25[0-5])\>' 255.255.255.0 10.1.249.40 255.255.0.0 10.1.255.255 255.0.0.0 255.255.255.0 [root@centos7 ~]#
2、查出分區空間最大的使用率百分比
root@centos7 ~]# df|tail -7|tr -s ' ' ':' /dev/sda3:123157756:3851192:119306564:4%:/ devtmpfs:486124:0:486124:0%:/dev tmpfs:500664:12:500652:1%:/dev/shm tmpfs:500664:26036:474628:6%:/run tmpfs:500664:0:500664:0%:/sys/fs/cgroup /dev/sda1:508588:157108:351480:31%:/boot tmpfs:100136:0:100136:0%:/run/user/0 [root@centos7 ~]# df|tail -7|tr -s ' ' ':'|cut -d: -f5 4% 0% 1% 6% 0% 31% 0% [root@centos7 ~]# df|tail -7|tr -s ' ' ':'|cut -d: -f5 |sort -rn |head -1 31% [root@centos7 ~]#
3、查出用戶UID最大值的用戶名、UID及shell類型
[root@centos7 ~]# cat /etc/passwd|sort -t: -k3 -nr |head -1|cut -d: -f1,3,7 nfsnobody:65534:/sbin/nologin [root@centos7 ~]#
4、查出/tmp的權限,以數字方式顯示
[root@centos7 ~]# stat /tmp|head -4|tail -1 |tr -d '[:punct:][:alpha:]'|tr -s ' ' ":" :1777:0:0: [root@centos7 ~]# stat /tmp|head -4|tail -1 |tr -d '[:punct:][:alpha:]'|tr -s ' ' ":"|cut -d: -f2 1777 [root@centos7 ~]#
5、統計當前連接本機的每個遠程主機IP的連接數,并按從大到小排序
[root@centos7 ~]# netstat -tn|grep tcp |tr -s ' ' ':' |cut -d: -f4|uniq -c 4 192.168.226.133 [root@centos7 ~]#
6、顯示/proc/meminfo文件中以大小s開頭的行;(要求:使 用兩種方式)
[root@centos7 ~]# grep "^[sS].*" /proc/meminfo SwapCached: 4 kB SwapTotal: 2098172 kB SwapFree: 2098168 kB Shmem: 26060 kB Slab: 118472 kB SReclaimable: 68372 kB SUnreclaim: 50100 kB [root@centos7 ~]# [root@centos7 ~]# grep -i "^s.*" /proc/meminfo SwapCached: 4 kB SwapTotal: 2098172 kB SwapFree: 2098168 kB Shmem: 26060 kB Slab: 118472 kB SReclaimable: 68372 kB SUnreclaim: 50100 kB [root@centos7 ~]#
7、顯示/etc/passwd文件中不以/bin/bash結尾的行
[root@centos7 ~]# grep -v "/bin/bash$" /etc/passwd
8、顯示用戶rpc默認的shell程序
[root@centos7 ~]# grep "^rpc\>" /etc/passwd |cut -d: -f7 /sbin/nologin [root@centos7 ~]#
9、找出/etc/passwd中的兩位或三位數
[root@centos7 ~]# grep -E "\<[1-9][0-9]\>|\<[1-9][0-9][0-9]\>" /etc/passwd mail:x:8:12:mail:/var/spool/mail:/sbin/nologin operator:x:11:0:operator:/root:/sbin/nologin games:x:12:100:games:/usr/games:/sbin/nologin ftp:x:14:50:FTP User:/var/ftp:/sbin/nologin nobody:x:99:99:Nobody:/:/sbin/nologin systemd-bus-proxy:x:999:998:systemd Bus Proxy:/:/sbin/nologin [root@centos7 ~]# grep "\<[1-9][0-9]\{1,2\}\>" /etc/passwd [root@centos7 ~]# grep -w "[1-9][0-9][0-9]\?" /etc/passwd
10、顯示/etc/grub2.cfg文件中,至少以一個空白字符開頭的 且后面存非空白字符的行
grep "^[[:space:]]\+[^[:space:]].*" /etc/grub2.cfg
11、找出"netstat -tan"命令的結果中以'LISTEN'后跟多個空白字符的行
[root@centos7 ~]# netstat -tan |grep "LISTEN[[:space:]]\+" tcp 0 0 192.168.122.1:53 0.0.0.0:* LISTEN tcp 0 0 0.0.0.0:22 0.0.0.0:* LISTEN tcp 0 0 127.0.0.1:631 0.0.0.0:* LISTEN tcp 0 0 127.0.0.1:25 0.0.0.0:* LISTEN tcp6 0 0 :::22 :::* LISTEN tcp6 0 0 ::1:631 :::* LISTEN tcp6 0 0 ::1:25 :::* LISTEN [root@centos7 ~]#
12、添加用戶bash、testbash、basher以及nologin(其shell為 /sbin/nologin),而后找出/etc/passwd文件中用戶名同shell名 的行
root@centos7 ~]# grep "^\<\(.*\)\>.*\<\1\>$" /etc/passwd sync:x:5:0:sync:/sbin:/bin/sync shutdown:x:6:0:shutdown:/sbin:/sbin/shutdown halt:x:7:0:halt:/sbin:/sbin/halt bash:x:1007:1007::/home/bash:/bin/bash nologin:x:1009:1009::/home/nologin:/sbin/nologin [root@centos7 ~]# grep "^\<\(.*\)\>.*/\1$" /etc/passwd sync:x:5:0:sync:/sbin:/bin/sync shutdown:x:6:0:shutdown:/sbin:/sbin/shutdown halt:x:7:0:halt:/sbin:/sbin/halt bash:x:1007:1007::/home/bash:/bin/bash nologin:x:1009:1009::/home/nologin:/sbin/nologin [root@centos7 ~]#
13、顯示當前系統root、mage或wang用戶的UID和默認shell
root@centos7 ~]# grep -E "^\<root\>|^\<mage\>|^\<wang\>" /etc/passwd root:x:0:0:root:/root:/bin/bash wang:x:1003:10011::/home/wang:/bin/bash mage:x:1010:1010::/home/mage:/bin/bash [root@centos7 ~]# grep -E "^\<root\>|^\<mage\>|^\<wang\>" /etc/passwd |cut -d: -f3,7 0:/bin/bash 1003:/bin/bash 1010:/bin/bash [root@centos7 ~]# [root@centos7 ~]# grep -E '^(mage|wang|root)\>' /etc/passwd root:x:0:0:root:/root:/bin/bash wang:x:1003:10011::/home/wang:/bin/bash mage:x:1010:1010::/home/mage:/bin/bash [root@centos7 ~]# grep -E '^(mage|wang|root)\>' /etc/passwd |cut -d: -f3,7 0:/bin/bash 1003:/bin/bash 1010:/bin/bash [root@centos7 ~]#
14、找出/etc/rc.d/init.d/functions文件中行首為某單詞(包 括下劃線)后面跟一個小括號的行
[root@centos7 ~]# grep -E '^[[:alpha:]_]+\(\)' /etc/init.d/functions checkpid() { __pids_var_run() { __pids_pidof() { daemon() { killproc() { pidfileofproc() { pidofproc() { status() { echo_success() { echo_failure() { echo_passed() { echo_warning() { update_boot_stage() { success() { failure() { passed() { warning() { action() { strstr() { is_ignored_file() { is_true() { is_false() { apply_sysctl() { [root@centos7 ~]#
15、使用egrep取出/etc/rc.d/init.d/functions中其基名
[root@centos7 ~]# echo "/etc/init.d/functions/" |grep -o -E "[^/]+/?$" functions/ [root@centos7 ~]# echo "/etc/sysconfig/"|grep -E -o "[^/]+/?$" sysconfig/ [root@centos7 ~]#
未完結,待續,正則正忙,小編去喝茶了^_^。。。。。:)
本章節總結在如下博客地址歡迎訪問:http://purify.blog.51cto.com/
原創文章,作者:alren,如若轉載,請注明出處:http://www.www58058.com/29751