0804练习与作业

0804练习与作业

练习

 1 、找出ifconfig 命令结果中本机的所有IPv4 地址

答: 使用cut将电脑的IP地址提取出来。

图片12.png 

经过观察,这些信息极为不规则,没有明显的分隔符。这时们需要首先提取出IP地址所在的行,然后去定义一个合适的分隔符,再利用cut进行提取即可。(思路:化繁为简,化不规则为规则,这样才能更好的套用我们的命令模型)

图片13.png 

 2 、查出分区空间使用率的最大百分比值

答:# df|tr -s " "|sort -t" " -k 5 -nr |head -2|tail -1|cut -d" " -f5

图片14.png 

 3 、查出用户UID 最大值的用户名、UID shell 类型

答:# getent passwd|sort -t: -k 3 -n|cut -d: -f1,3,7|tail -1

 图片15.png

 4 、查出/tmp 的权限,以数字方式显示

答:#stat /tmp|head -n 4|tail -n 1|cut -d"(" -f2|cut -d"/" -f1

图片16.png 

 5 、统计当前连接本机的每个远程主机IP 的连接数,并按从大到小排序。

答:利用iptables -F关闭防火墙

     netstat -nt显示连接主机的ip

$ netstat -nt|tr -s " "|cut -d" " -f5|cut -d: -f1|sort -rn|uniq -c

图片17.png 

6 、显示/proc/meminfo 文件中以大小S开头的行;( 要求:使用两种方式)

答:(1grep  ^S  /proc/meminfo v

图片18.png 

(2)grep  S.*  /proc/meminfo

图片19.png 

7 、显示/etc/passwd 文件中不以/bin/bash 结尾的行

答:]# grep -v '/bin/bash$'  /etc/passwd

图片20.png 

8、显示用户rpc 默认的shell 程序

v答: 找这样的用户rpc,则必须先锚定为一行的行首,其次长度一定,那么再进行行尾的锚定。

 图片21.png

9、找出/etc/passwd 中的两位或三位数.

  答:grep \<[[:digit:]]\{2,3\}\> /etc/passwd  只是数字所以记得要锚定。

图片22.png 

10、显示/etc/grub2.cfg 文件中,至少以一个空白字符开头的

且后面存非空白字符的行

答:]# grep "^[[:space:]]\+[^[:space:]].*"  /etc/grub2.cfg

图片23.png 

11、找出"netstat -tan" 命令的结果中以'LISTEN' 后跟0 1或多个空白字符结尾的行。

答:]# netstat -tan|grep "\<LISTEN[[:space:]]*$"

图片24.png 

12、添加用户bash testbash basher 以及nologin( shell/sbin/nologin), 而后找出/etc/passwd 文件中用户名同shell名的行。

答:先按要求添加用户

图片25.png 

然后,输入# getent passwd | grep "\(\b[[:alnum:]]\{1,\}\):.*\1$"  /etc/passwd

图片26.png 

13、显示当前系统root mage wang 用户的UID 和默认shell

答:# grep -E "^root\b|^wang\b"  /etc/passwd |cut -d: -f3,7

图片27.png 

图片28.png 

14、找出/etc/rc.d/init.d/functions 文件中行首为某单词(

括下划线) 后面跟一个小括号的行。

答:grep ^([[:alpha:]_])+\(\) /etc/rc.d/init.d/functions

图片29.png 

15、使用egrep 取出/etc/rc.d/init.d/functions 中其基名。

答:# ls -d  /etc/rc.d/init.d/functions |egrep  -o "[^/]+$"

16、使用egrep 取出上面路径的目录名

答:# echo  "/etc/rc.d/init.d/functions" |egrep  -o "^.*/"

17、统计以root 身份登录的每个远程主机IP 地址的登录次数

答:# who |tr -s " " ":"|grep "^root\b"|cut -d "(" -f2|cut -d ")" -f1|uniq -c

 

图片30.png 

图片32.png 

18、利用扩展正则表达式分别表示0-9 10-99 100-199200-249 250-255

答: 0-9     grep -E "^[[:digit:]]\b"

     10-99   grep -E "^[1-9][0-9]\b" /testdir/a.txt

     100-199  grep -E "^1[0-9][0-9]\b" /testdir/a.txt

     200-249   grep -E "^2[0-4][0-9]\b" /testdir/a.txt

     250-255   grep -E "^25[0-5]\b" /testdir/a.txt

19、显示ifconfig 命令结果中所有IPv4

答: 以centos为例

图片32.png 

输入:ifconfig |grep -E "(Bcast)"|tr -s " " ":"|cut -d: -f6

图片33.png 

 

原创文章,作者:178babyhanggege,如若转载,请注明出处:http://www.178linux.com/30845

(0)
178babyhanggege178babyhanggege
上一篇 2016-08-08 20:10
下一篇 2016-08-08 20:10

相关推荐

  • 对防火墙的初步认识

      防火墙,就是用于实现Linux下访问控制的功能的,它分为硬件的或者软件的防火墙两种。无论是在哪个网络中,防火墙工作的地方一定是在网络的边缘。而我们的任务就是需要去定义到底防火墙如何工作,这就是防火墙的策略,规则,以达到让它对出入网络的IP、数据进行检测。    目前市面上比较常见的有3、4层的防火墙,叫网络层的防火墙,还有7…

    Linux干货 2017-06-15
  • bash的一些特性

    bash的字符串处理工具 字符串切片: ${var:offset:number} 取字符串的子串; 取字符串的最右侧的几个字符:${var: -length} 注意:冒号后必须有一个空白字符; 基于模式取子串; ${var#*word}: 其中word是指定的分隔符;功能:自左而右,查找var变量中所存储的字符串中,第一次出现word分隔符,删除字符串开头至…

    Linux干货 2016-08-24
  • 小练习题。【第三周】

    练习 1、列出当前系统上所有已经登陆的用户的用户名,注意:同一个用户登录多次,则只显示一次即可。 ~]# who | cut -d' ' -f1 |uniq 2、取出最后登录到当前系统的用户的相关信息。 /]# who | sort&nbs…

    Linux干货 2016-11-26
  • N26-第四周作业-邢岩

    马哥门徒-N26-邢岩   精神练习需要深入认真的工作以及热情的劲头。当你开始练习,你是在挣扎、在反抗,你需要集中精力,然后慢慢进步。那么,我们就开始吧。   第一题,复制/etc/skel目录为/home/tuser1,要求/home/tuser1及其内部文件的属组和其它用户均没有任何访问权限。   ~]# cp -r /et…

    Linux干货 2017-02-15
  • Linux破解root口令

    Centos5、6版本破解口令方法 1 启动系统 2 在操作系统选择菜单界面选中要启动的内核 — 按a键 3 在行尾输入 1(或s或S或single)— 按回车键 4 使用passwd命令修改口令即可   Centos7版本破解口令方法 方法1 1 启动系统 2 在操作系统选择菜单界面选中要启动的内核 — 按e键…

    Linux干货 2018-01-08
  • 计划任务

              前要:Linux的计划任务主要分为三块。单一的执行一次计划任务,系统自动的选择空闲时间去执行特定的任务, 周期性的执行相关任务,下面就此三块做简要的描述。 一:单一的计划任务at      &nbsp…

    2017-07-01