马哥教育网络班20期-第五周课程作业

Table of Contents

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

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

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

grep '^#[[:space:]]\+[^[:space:]]\+' /etc/rc.d/rc.sysinit

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

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
grep '^\([^:]\+\):.*/\1$' /etc/passwd

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

grep '^\(root\|fedora\|user1\):' /etc/passwd | cut -d: -f1,7

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

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

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

echo '/etc/passwd' | grep -o '^.*[^/]' | grep -o '/[^/]\+/\?$'
  • 扩展:取出其路径名

echo '/etc/passwd' | grep -o '^.*[^/]' | grep -o '^.*/'

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

ifconfig | grep -o '\<\([0-1]\?[0-9]\{1,2\}\|2[0-4][0-9]\|25[0-5]\)\>'

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

ifconfig | grep -o '\(\<\([0-1]\?[0-9]\{1,2\}\|2[0-4][0-9]\|25[0-5]\)\>\.\)\{3\}\<\([0-1]\?[0-9]\{1,2\}\|2[0-4][0-9]\|25[0-5]\)\>'

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

echo 'qiumupo@qq.com' | grep '^[a-zA-Z0-9_-]\+@[a-zA-Z0-9_-]\+\(\.[a-zA-Z0-9_-]\+\)\+$'

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

find /var -user root -group mail

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

find . -nouser -o -nogroup

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

find . \( -nouser -o -nogroup \) -a -atime -3

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

find /etc -perm -444

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

find /etc -size +1M -type f

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

find /etc/init.d -perm -115

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

find /usr ! -user root ! -user bin ! -user hadoop

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

find /etc ! -perm -444

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

find /etc -ctime -7 ! -user root ! -user hadoop

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

(0)
Net20_木皮Net20_木皮
上一篇 2016-07-12 11:21
下一篇 2016-07-12 11:21

相关推荐

  • 第三周小练习

    1. 列出当前系统上所有已经登陆的用户的用户名,注意,同一个用户登陆多次,则显示一次即可 who -u|grep -o "^[[:alnum:]]*\>"|uniq 2. 取出最后登陆到当前系统的用户信息 who|tail -n1 3. 取出当前系统上被用户当作其默认shell的最多的那个sh…

    Linux干货 2016-11-21
  • Linux发展史

    简 述 Linux是一套自由加开放源代码的类Unix操作系统,诞生于1991年10月5日(第一次正式向外公布),由芬兰学生Linus Torvalds和后来陆续加入的众多爱好者共同开发完成。 Linux是一个基于POSIX和Unix的多用户、多任务、支持多线程和多CPU的操作系统。它能运行主要的Unix工具软件、应用程序和网络协议,可支持32位和64位硬件。…

    2016-10-14
  • 分布式系统的事务处理

    当我们在生产线上用一台服务器来提供数据服务的时候,我会遇到如下的两个问题: 1)一台服务器的性能不足以提供足够的能力服务于所有的网络请求。 2)我们总是害怕我们的这台服务器停机,造成服务不可用或是数据丢失。 于是我们不得不对我们的服务器进行扩展,加入更多的机器来分担性能上的问题,以及来解决单点故障问题。 通常,我们会通过两种手段来扩展我们的数据服务: 1)数…

    Linux干货 2016-08-15
  • linux开机启动流程

    linux开机启动流程:   一、BIOS 加电自检 当你按电源开关开机时,电脑会首先去启动BIOS(基本输入输出系统),BIOS一般是集成在主板上的. BIOS 的工作 1.检测连接硬件,比如显卡,内存,磁盘等等,检测的目的是以后把这些设备信息提供给操作系统 2.寻找启动磁盘,每一种BIOS都会有开机启动菜…

    Linux干货 2016-09-19
  • 第三周博客作业

    1、列出当前系统上所有已经登录的用户的用户名,注意:同一个用户登录多次,则只显示一次即可。 2、取出最后登录到当前系统的用户的相关信息。 3、取出当前系统上被用户当作其默认shell的最多的那个shell。 4、将/etc/passwd中的第三个字段数值最大的后10个用户的信息全部改为大写后保存至/tmp/maxusers.txt文件中。 5、取出当前主机的…

    Linux干货 2017-02-06
  • linux软链接与硬链接的区别

    硬链接:相于当给文件增加了一个新名 在添加链接时会增加链接数,其inode结点数不会增加 支持绝对路径与相对路径 硬链接不能对目录来创建 不能跨分区来创建链接 硬链接链接到文件被删除时,依旧可以通过链接文件来访问被删文件的数据 软链接:可以支持对目录来创建链接 (注,当你用rm -rf 删除目录的时候,目录不会删除,但目录中的内容会被删除,并且会删除源文件)…

    Linux干货 2016-10-02

评论列表(1条)

  • 马哥教育
    马哥教育 2016-07-12 14:49

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