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

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

1
]grep "^[[:space:]]\+" /boot/grub/grub.conf

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

1
]grep "^#[[:space:]]\+.*[^[:space:]]" /etc/rc.d/rc.sysinit

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

1
]# netstat -tan|grep "LISTEN[[:space:]]\+$"

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

1
]# grep "^\([[:alpha:]]\+\)\>.*\1$" /etc/passwd

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

1
]grep -E "^(root|fedora|user1)" /etc/passwd|cut -d: -f1,7

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

1
]# grep "[[:alpha:]]\+()" /etc/init.d/functions

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

1
]# echo "/etc/init.d/httpd/httpd.conf"|grep -o "[[:alnum:]]\+\.\?[[:alnum:]]\+$"

  扩展:取出其路径名

1
]# echo "/etc/init.d/httpd"|grep -o "^\/.*\/"

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

1
]# ifconfig|grep -Eo "[1-9]|[1-9][0-9]|1[0-9][0-9]|2[0-5][0-5]"

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

1
]# ifconfig|grep -oE "([1-9]\.|[1-9][0-9]\.|1[0-9][0-9]\.|2[0-4][0-9]\.|2[0-5][0-5]\.)([0-9]\.|[1-9][0-9]\.|1[0-9][0-9]\.|2[0-4][0-9]\.|2[0-5][0-5]\.){2}([0-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|2[0-5][0-5])"

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

1
]# grep -E "^[[[:alnum:]]+|\-+|\_+][[[:alnum:]]+|\-+|\_+]\@[[:alnum:]]+\.[[:alpha:]]+(\.[[:alpha:]])?" mail.txt

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

1
]# find /var -user root -group mail

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

1
]# find / -nouser -o -nogroup

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

1
]# find / -nouser -nogroup  -atime -3

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

1
]# find /etc -perm -222

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

1
]# find /etc -size +1M -type f

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

1
]# find /etc/init.d/ -perm -113

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

1
]# find /usr ! -user root -a ! -user bin -a ! -user hadoop

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

1
]# find /etc ! -perm -222

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

1
]# find /etc -mtime 7 -a ! -user root -a ! -user hadoop

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

(0)
pandamirpandamir
上一篇 2016-07-22
下一篇 2016-07-22

相关推荐

  • bash脚本编程class2

    bash脚本class2—循环语句的使用      一.三种循环语句以及其具体使用方法   我们知道,在shell脚本编程过程中,为了实现逻辑关系的运算,有三种执行命令的顺序:顺序执行,选择执行,循环执行。通过if,case这类语句可以实现条件筛选后执行命令,这次课程中所学的主要知识点为循环语句的三种使用方式:for,…

    Linux干货 2016-08-19
  • useradd的学习小结

    1、作用 创建一个新的用户账号或者更新创建用户时的默认设置。 2、语法 有两种语法格式,第一种是创建新用户时,为新用户设置属性,而不完全使用/etc/default/useradd默认设置的内容;第二种是设置/etc/default/useradd的内容,即设置创建新用户时,新用户具有的默认属性。 (1)useradd [选项 属性] 用户名 如果不加选项,…

    2017-07-22
  • 第四周练习

    1、复制/etc/skel目录为/home/tuser1,要求/home/tuser1及其内部文件的属组和其它用户均没有任何访问权限 # cp -a /etc/skel /home/tuser1 # chmod -R go= /home/tuser1 2、编辑/etc/group文件,添加组hadoop #vim /etc/group #hadoop:x:5…

    Linux干货 2017-10-21
  • Linux 任务计划、周期性任务执行

    Linux 任务计划、周期性任务执行 概述:      什么是任务计划呢?就像我们每个人日常生活中都会使用到的闹钟一样,按时的去提醒该去做什么事情,以免忘记。同样,我们在工作当中也要在每天在特定的时间内安排做一些事情,这就是任务计划,本章将学习如何制定Linux系统的任务计划,这里主要包括两种工具:at和crontab…

    Linux干货 2016-09-11
  • 安装CentOS 6.9

    安装完VMvare,VMware可以运行虚拟机,虚拟机就相当于一台电脑,然后我们在这台电脑上安装Linux系统,我们这次介绍安装CentOS 6.9的过程 1.打开VMware,依照下图步骤安装     首先我们需要创建新的虚拟机,然后配置出适合自己物理机的虚拟机 2.点击典型类型安装     这里推荐使用典…

    2017-07-12

评论列表(1条)

  • 马哥教育
    马哥教育 2016-07-22 10:48

    写的很好,排版也很棒,加油