马哥教育网络班21期-第5周课程练习

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

      grep ‘^[[:space:]]\{1,\}’ /boot/grub/grub.conf

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

      grep ‘^[[:space:]]\+[[:alnum:]]\+’ /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 nologin -s /sbin/nologin

      egrep “^([[:alnum:]]+)\>.\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/rc.d | grep -o '^.*[^/]' | grep -o '/[^/]\+/\?$'

扩展:取出其路径名

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

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

ifconfig | grep -E -o "\<([1-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])\>"

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

 

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

grep -E -o '\<[[:alnum:]]+@[[:alnum:]]+\.[[:alnum:]]+\>'

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

      find /var -user root -a -group mail

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

      find / -nouser -o -nogroup

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

find / -nouser -o -nogroup -a -atime 3

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

      find /etc/ -perm +222

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

      find /etc/ -type f -a -size +1M

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 -222

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

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

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

(0)
kfkf
上一篇 2016-12-18 15:39
下一篇 2016-12-18 15:47

相关推荐

  • LVM 2 介绍以及怎么使用?

    一、 LVM是什么? LVM利用Linux内核的device-mapper来实现存储系统的虚拟化(系统分区独立于底层硬件)。 通过LVM,你可以实现存储空间的抽象化并在上面建立虚拟分区(virtual partitions),可以更简便地扩大和缩小分区,可以增删分区时无需担心某个硬盘上没有足够的连续空间, without getting caught up …

    Linux干货 2017-01-06
  • httpd配置

    1、Centos7系统下实现httpd-2.2的安装,并分别实现prefork、worker、event等几种工作方式

    2、简述request报文请求方法和状态响应码

    3、详细描述httpd虚拟主机、站点访问控制、基于用户的访问控制、持久链接等应用配置实例

    Linux干货 2018-02-05
  • Linux第四周总结

    1、复制/etc/skel目录为/home/tuser1, 要求/home/tuser1及其内部文件的属组和其它用户均没有任何访问权限。 2、编辑/etc/group文件,添加组hadoop。 3、手动编辑/etc/passwd文件新增一行,添加用户hadoop, 其基本组ID为hadoop组的id号;其家目录为/home/hadoop。 4、复制/etc/…

    2017-07-24
  • 硬链接与软链接的区别

    硬链接(Hard Link):   硬连接指通过索引节点来进行链接(即一个指针指向文件索引节点)。在Linux的文件系统中,保存在磁盘分区中的文件不管是什么类型都给它分配一个编号,称为索引节点号(Inode Index)。在Linux中,多个文件名指向同一索引节点是存在的。一般这种链接就是硬链接。硬链接的作用是允许一个文件拥有多个有效路径…

    Linux干货 2016-10-20
  • Linux终端类型

    Linux中各种终端的解释 设备终端   键盘鼠标显示器 物理终端( /dev/console ) )   在Linux 系统中,计算机显示器通常被称为控制台终端(Console)。 虚拟终端(tty :teletypewriters, /dev/tty# # 为[1-6])   tty 可有n 个,Ctrl+Alt+…

    Linux干货 2016-10-13
  • PHP中引用的详解(引用计数、写时拷贝)

    《PHP5中文手册》内容中"引用的解释"一文的摘要: 1. PHP中引用的特性 PHP中引用意味着用不同的名字访问同一个变量内容,引用不是C的指针(C语言中的指针里面存储的是变量的内容,在内存中存放的地址),是变量的另外一个别名或者映射。注意在 PHP 中,变量名和变量内容是不一样的,因此同样的内容可以有不同的名字。最接近的比喻是 Uni…

    Linux干货 2015-04-10