课堂作业
1.找出ifconfig命令结果中的IP地址
[root@localhost ~]# ifconfig |head -2|grep "inet" |tr " " ":"|cut -d: -f13
2、找出df中磁盘利用率的数
[root@localhost ~]# df |tail -5|tr ' ' ':' |tr -s :|cut -d: -f5 |tr "%" " "
简便方法: [root@localhost ~]# df |tail -5 |tr -s " "|cut -d" " -f5 |tr -d %
注意:tr -s 是去掉相同的 tr -d 是删除 tr -cd删除取反的(忘记了,再记)
3、1.找出ifconfig命令结果中本机的所有ipv4地址
[root@localhost ~]# ifconfig |tr -cs '[0-9].' '\n' |sort -ut '.' -k3n
4、查处分区空间使用率的最大百分比值
[root@localhost ~]# df |tr -s " "|tr " " ":"|cut -d: -f5|tr -d %|sort -n|tail -1
5、查处用户uid最大值的用户名、uid及shell类型
[root@localhost ~]# getent passwd|cut -d: -f1,3,7|sort -t : -k2 -n|tail -1
6、查处/tmp的权限,以数字方式显示
[root@localhost ~]# stat /tmp|grep "Uid"|cut -d: -f2 |tr -cs [0-9] ' '
方法二:[root@localhost ~]# stat /tmp|grep "Uid"|tr -cs [0-9] ' '|cut -d" " -f2
7、显示/proc/meminfo文件中以大小s开头的行(两种方法)
[root@localhost ~]# grep -i '^s.*' /proc/meminfo [root@localhost ~]# grep '^[Ss].*' /proc/meminfo
8、显示/etc/passwd文件中不宜/bin/bash结尾的行
[root@localhost ~]# grep -v "\(/bin/bash\)$" /etc/passwd
9、显示用户rpc默认的shell程序
[root@localhost ~]# getent passwd|grep '^rpc\>' |cut -d: -f7
10、找出/etc/passwd中的两位或三位数
[root@localhost ~]# grep "\<[1-9]\{2,3\}\>" /etc/passwd
11、显示/etc/grub2.cfg文件中,至少以一个空白字符开头的且后面存非空白字符的行
[root@localhost ~]# grep "^[[:space:]]\+[^[:space:]].*" /etc/grub.conf
12、找出‘netstat -tan’命令的结果中以‘LISTEN’后跟任意多个空白字符结尾的行
[root@localhost ~]# netstat -tan|grep "LISTEN[[:space:]]*$"
13、添加用户bash,testbash,basher,nologin(shell为/sbin/nologin)。然后找出/etc/passwd文件中用户名同shell名相同的行
[root@localhost ~]# grep "^\<\(.*\)\>.*\1$" /etc/passwd
14、显示三个用户root,mage,wang的uid和默认shell
[root@localhost ~]# egrep "^(mage|wang|root)\>" /etc/passwd |cut -d: -f1,7
15、找出/etc/rc.d/init.d/functions文件中行首为某单词(包括下划线)后面跟一个小括号的行
[root@localhost ~]# egrep "^[[:alpha:]_]*\(\)" /etc/rc.d/init.d/functions
16、使用egrep取出/etc/c.d/init.d/functions中其基名
[root@localhost ~]# echo " /etc/rc.d/init.d/functions" |egrep -o "[^/]+/?$"
17、使用egrep取出/etc/ec.d/init.d/functions的目录名
[root@localhost ~]# echo " /etc/rc.d/init.d/functions" |egrep -o "(/.*/)"
18、统计以root身份登录的每个进程主机ip地址的登录次数
[root@localhost ~]# last |egrep -o "^root\>.*([[:digit:]]\.){3}[[:digit:]]" |tr -s '' |cut -d ' ' -f3|sort |uniq -c
19、利用扩展正则表达式分别表示0-9,10-99,100-199,200-249,250-255,显示ifconfig命令结果中所有ipv4地址
[root@localhost ~]# ifconfig |egrep -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])"
20、统计/etc/init.d/functions 文件中每个单词出现的次数,并按频率从高到低显示
[root@localhost ~]# cat /etc/init.d/functions |tr -cs '[:alpha:]' "\n" |sort|uniq -c|sort -nr
21、/etc/rc.d/init.d/functions或/etc/rc.d/init.d/functions/" 取目录名
[root@localhost ~]# echo "/etc/rc.d/init.d/functions/" |sed 's@[^/]\+/\?$@@'
22、正则表达式表示身份证(后续几题暂时不会)
原创文章,作者:15152188070,如若转载,请注明出处:http://www.178linux.com/30287