马哥教育网络班20期+第5周课程练习

1、显示/boot/grub/grub.conf中至少一个空白字符开头的行

[root@localhost ~]# grep "^[[:space:]]\+.*" /boot/grub2/grub.cfg

2、显示/etc/rc.d/rc.sysinit文件中以#开头,后面跟至少一个空白字符,而后又有至少一个非空白字符的行;

[root@localhost ~]# grep "^#[[:space:]]\+[^[:space:]]\+" /etc/rc.d/rc.sysinit

3、打出netstat -tan命令执行结果中以“LISTEN”,后或跟空白字符结尾的行

[root@localhost ~]# netstat -tan |grep "LISTEN[[:space:]]\?"

     

4、添加用户bash,testbash,basher,nologin(此一个用户的shell为/sbin/nologin),而后找出当前系统上其用户名和默认shell相同的用户信息。

useradd bash

useradd testbash

useradd basher

useradd -s /sbin/nologin nologin

 

[root@localhost ~]# grep -E '^(\<[a-z]+\>).*\1$' /etc/passwd

 

5、显示当前系统上root、fedora或user1用户默认的shell

     grep -E "^(root|fedora|user1)\>" /etc/passwd |cut -d: -f7 

6、找出/etc/rc.d/init.d/functions文件中某单次后面跟一组小括号的行,形如:hello()

[root@localhost ~]#  grep "\<.*\>()" /etc/rc.d/init.d//functions

7、使用echo命令输出一个绝对路径,使用grep取出其基名 

[root@localhost ~]# echo /etc/sysconfig/network-scripts/ifcfg-eth0 | grep -Eo "(\<[^/]+?)$"

ifcfg-eth0

   

8、找出ifconfig命令结果中的1-255之间数字

[root@localhost ~]# ifconfig | egrep "\<([1-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])\>"

9、挑战题:写一个模式,能匹配合理的IP地址

[root@localhost ~]# ifconfig | egrep -o "[1-9]{1,3}\.[1-9]{1,3}\.[1-9]{1,3}\.[1-9]{1,3}" 

192.168.117.128

10、挑战题:写一个模式,能匹配出所有的邮件地址

[root@localhost ~]# cat mail.txt  | grep '[[:alnum:]]\+@[[:alnum:]]\+\.[[:alnum:]]\+$'

11、查找/var目录下属主为root,且属组为mail的所有文件或目录

[root@localhost ~]# find  /var -user root -group mail 

/var/spool/mail

/var/spool/mail/root

12、查找当前系统上没有属主或属组的文件

     进一步:查找当前系统上没有属主或属组,且最近3天内曾被访问过的文件或目录

[root@localhost ~]# find / -nouser -o -nogroup

[root@localhost ~]#  find /  -nouser -o -nogroup  -a -atime 3

     

13、查找/etc目录下所有用户都有写权限的文件 

[root@localhost ~]# find /etc -perm /222

14、查找/etc目录下大于1M,且类型为普通文件的所有文件

[root@localhost ~]# find  /etc -type f -size +1M

15、查找/etc/init.d/目录下,所有用户都有执行权限,且其他用户有写权限的文件

[root@localhost ~]#  find /etc/init.d/ ! -perm 112 |ls -lrt

16、查找/usr目录下不属于root、bin、hadoop的文件

[root@localhost ~]#  find /usr/ -type f !  \( -user  root -o -user bin -o -user hadoop \) -ls

17、查找/etc/目录下至少有一类用户没有写权限的文件

[root@localhost ~]# find /etc ! -perm +222 -ls

18、查找/etc目录下最近一周内其内容被修改过,且不属于root或hadoop的文件

[root@localhost ~]#  find /etc/ -type f -ctime -7  -a ! \( -user root -o -user hadoop \) -ls

找出/etc/passwd文件中一位数或两位数;

    # grep '\<[0-9]\{1,2\}\>'   /etc/passwd  #其中一对尖括是用来锚定的,

                    要不然像1234,这样的数也会匹配到的,题目中明确1位或2位

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

(0)
Net20_KenNet20_Ken
上一篇 2016-08-15 09:26
下一篇 2016-08-15 10:52

相关推荐

  • LVM2:创建、使用、扩展、缩减、快照五步骤

    LVM2这是个关键的概念,还是从操作中比较容易理解 1、创建一个至少有两个PV组成的大小为40G的名为testvg的VG;要求PE大小为16MB, 而后在卷组中创建大小为5G的逻辑卷testlv;挂载至/users目录 注意点:在vmware中添加两块硬盘,但是并不能马上可以查看,需要扫描一下磁盘,磁盘未/dev/sdc,/dev/sdd 然后创建LVM的基…

    Linux干货 2016-09-05
  • 第四周博客作业

    1、复制/etc/skel目录为/home/tuser1,要求/home/tuser1及其内部文件的属组和其它用户均没有任何访问权限。 [root@localhost ~]# cp -r /etc/skel /home/tuser1 [root@localhost ~]# ls …

    Linux干货 2016-12-28
  • Linux基本命令

    前言 今天学习了Linux下的一些基本命令,在此归纳总结一下这些命令的基本用法。 Linux命令帮助的获取     在拿到一个命令后不知道其用法,我们可以通过命令帮助来查看它的用法,但linux下内部命令和外部命令获取帮助的方法是有差别的。     内部命令:help command &n…

    Linux干货 2016-10-14
  • shell位置变量解析

    什么是位置变量 在脚本代码中调用通过命令行传递给脚本的参数。 有哪些位置变量 $1,$2,…: 对应第1、第2等参数,shift [n]换位置 $0:命令本身 $*:传递给脚本的所有参数,全部参数合为一个字符串 $@:传递给脚本的所有参数,每个参数为独立字符串$#:传递给脚本的参数的个数    &nbsp…

    Linux干货 2016-08-15
  • 马哥网络班21期,第三周作业

    1、列出当前系统上所有已经登录的用户的用户名,注意:同一个用户登录多次,则只显示一次即可。     who | cut -d " " -f1 | sort -u     who:查看当前系统所有用户的会话     cut:剪切命令       cut…

    Linux干货 2016-07-26
  • Linux高级磁盘管理-RAID管理

    在冯诺依曼体系机构中,输入输出要存储的外部磁盘I/O能力实在太低,尤其是企业面对高并发的访问量,在系统内部需要大量调度磁盘的上的网页文件资源,这些都会产生大量的I/O,一个磁盘的I/O能力不管如何提升毕竟是有线的,尤其是机械硬盘;同时为了保障业务的连续性,磁盘故障时必须提供冗余能力,面对这样的实际需求环境,RAID技术产生了,通过组织磁盘阵列方式提供I/O,…

    Linux干货 2016-09-06

评论列表(1条)

  • 马哥教育
    马哥教育 2016-08-17 14:29

    写的很好,排版还可以在漂亮一点,加油,ip地址的扩展不对