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

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

egrep "^\s+" /boot/grub/grub.conf

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

egrep "^#\s+\S" /etc/rc.d/rc.sysinit

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

netstat -tan |egrep  "LISTEN\s+"

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

useradd bash
useradd testbash
useradd basher
useradd nologin -s /sbin/nologin
egrep "^(\b\w+\b).*\1$" /etc/passwd

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

egrep "(^root|^fedora|^user1)" /etc/passwd | cut -d: -f7

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

egrep "\b\w+\b\(\)" /etc/rc.d/init.d/functions

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

echo "/etc/rc.d/init.d/functions" | egrep -o "\w+$"
echo "/etc/rc.d/init.d/functions" | egrep -o "/.*/"

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

ifconfig | egrep -o "\b[1-9]\b|\b[1-9][0-9]\b|\b[1][0-9][0-9]\b|\b[2][0-4][0-9]\b|\b25[0-5]\b"

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

ifconfig | egrep -o "inet addr.*[0-9]\s+" | cut -d" " -f2 | cut -d: -f2

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

cat <<EOF | egrep -o "\w.*@\w.*\...*"

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

find /var -user root -group mail -ls

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

find / -type f \( -nouser -o -nogroup \) -ls
find / \( -nouser -o -nogroup -a -atime -3 \) -ls

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

find /etc -perm -222  -ls

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

find /etc  -type f -size +1M  -exec ls -lh {} \;

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

find /etc/init.d  -perm -113  -ls

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

find /usr -not -user root -a -not -user bin -a -not -user hadoop

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

find /etc -not -perm -222 -ls

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

find /etc -mtime -7 -a -not -user root -a -not -user hadoop -ls

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

(0)
StoneStone
上一篇 2016-07-12 11:21
下一篇 2016-07-12 11:21

相关推荐

  • linux学习第一天

    了解Linux和计算机的基础

    2018-03-26
  • 初学Linux之标准 I/O 和管道

    前面我们已经了解了文件系统的部分内容,我们可以通过 ls 命令让当前目录下的内容都显示在屏幕上,也可以使用 pwd 命令,显示当前的所在的目录路径。但是我们输入的是命令,本身并没有输入“显示”这类命令和要求,但是系统就自动的在屏幕上输出我们命令指定的信息。由此可以想象到,系统自身有默认的一种输出方式,同时,有输出就有输入,当输入的和系统无关,系统也会自动提示错误,以上就是我们接下来要了解的基础内容——标准 I/O。具体的涉及内容包括:三种 I/O 设备,把 I/O 重定向入文件,tr 命令的使用,使用管道链接命令。

    2017-12-02
  • linux磁盘的利用

    RAID简介 RAID(Redundant Array of Independent Disk 独立冗余磁盘阵列)技术是加州大学伯克利分校1987年提出,最初是为了组合小而廉价磁盘来代替大的昂贵磁盘,同时希望磁盘失效时不会使对数据的访问受损 。 硬盘是个很脆弱的东西,它经常会坏掉。为了保证服务器可靠耐用,硬盘必须时时刻刻保持可用。由于RAID的出现,它的目的…

    Linux笔记 2018-04-29
  • 计算机操作系统简史 以及 终端类型

    计算机及操作系统发展史 1.计算机的主要部件 :ENIARC         Cpu:运算器  控制器(控制内存,IO总线)      存储器是寄存器(锁存数据)  缓存(加速功能)    内存:ram (random access mem…

    Linux干货 2016-10-19
  • Linux中一些常用的命令(一)

    ls命令 ls命令:用来列出当前目录的内容或指定目录,是使用频率较高的命令 -l:以长格式显示目录下的内容列表。输出的信息从左到右依次包括文件名,文件类型、权限模式、硬连接数、所有者、组、文件大小和文件的最后修改时间等 -a:列出所有隐藏文件和目录 -h:以人类可读的方式将文件或者目录大小显示出来 -R:把当前目录下的目录的所有内容列出来(递归) -d:显示…

    Linux干货 2017-03-30
  • linux第五周小结

    不知不觉已经第五周了,好快啊!这周我们主要讲了读命令,查找命令,压缩,解压缩,安装等命令,今天我总结一下查找命令 查找命令主要有:locate和find命令,但我们经常用到的也最实用的当属find,下面我重点总结一下find命令 有时可能需要在系统中查找具有某一特征的文件(例如文件权限、文件属主、文件长度、文件类型等等)。这样做可能有很多原因。可能出于安全性…

    2017-08-13

评论列表(1条)

  • 马哥教育
    马哥教育 2016-07-12 11:35

    写的很好,排版也很棒,可以尝试用grep去匹配一下,加油