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

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

# grep '^[[:space:]]\+' /boot/grub2/grub.cfg

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相同的用户的信息;

[root@localhost ~]# useradd bash
[root@localhost ~]# useradd testbash
[root@localhost ~]# useradd basher
[root@localhost ~]# useradd -s /sbin/nologin nologin
[root@localhost ~]# cat /etc/passwd | grep '^\([[:alnum:]]\+\)\:.*\1$'
sync:x:5:0:sync:/sbin:/bin/sync
shutdown:x:6:0:shutdown:/sbin:/sbin/shutdown
halt:x:7:0:halt:/sbin:/sbin/halt
bash:x:501:501::/home/bash:/bin/bash
nologin:x:504:504::/home/nologin:/sbin/nologin

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

# egrep '^(root|fedora|user1)' /etc/passwd

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

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

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

# echo /etc/sysconfig/network-scripts/ifcfg-eth0 | grep -o '[^\/]\+$'

扩展:取出其路径名

# echo /etc/sysconfig/network-scripts/ifcfg-eth0 | grep -o '^\/.*\/'

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

# ifconfig | egrep -o '\<([1-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])\>'

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

# ifconfig | egrep -o '[1-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}'

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

# cat test01.txt | grep '.*@.*\.[[:alpha:]]\+$'

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

# find /var -user root -group mail -ls

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

# find / -nouser -o -nogroup -ls

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

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

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

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

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

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

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

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

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

# find /usr -not \( -user root -o -user bin -o -user hadoop \) -ls

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

# find /etc -not -perm -222 -ls

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

# find /etc/ -atime 7 -not \( -user root -o -user hadoop \) -ls

原创文章,作者:N21-孟然,如若转载,请注明出处:http://www.178linux.com/27400

(0)
N21-孟然N21-孟然
上一篇 2016-08-05
下一篇 2016-08-05

相关推荐

  • N26 – 第二周作业

    1、文件管理类命令和常用使用方法 2、bash命令执行后返回值,和目录展开:     命令执行返回值,存储在“$?”这个特殊变量内。可以使用echo显示或在shell脚本中引用。其中0表示正常执行完成,1-255表示不同的错误类型。     目录展开的特殊符号:  &n…

    Linux干货 2016-12-30
  • MySQL/MariaDB基础性知识及DDL操作详解

    前言 MySQL/MariaDB是一个开放源码的小型关联式数据库管理系统,由于其体积小、速度快、总体拥有成本低,尤其是开放源码这一特点,许多中小型网站为了降低网站总体拥有成本而选择了MySQL/MariaDB作为网站数据库。 基础架构 MySQL核心组件 连接池:认证、线程重用、连接数限制、内存检查、缓存 SQL接口:DDL, DML, 关系型数据库的基本抽…

    Linux干货 2015-05-07
  • keepalived的安装和配置

    一、简介 Keepalived是一个免费开源的,用C编写的类似于layer3, 4 & 7交换机制软件,具备我们平时说的第3层、第4层和第7层交换机的功能。主要提供loadbalancing(负载均衡)和 high-availability(高可用)功能,负载均衡实现需要依赖Linux的虚拟服务内核模块(ipvs),而高可用是通过VRRP协议实现多台…

    Linux干货 2017-10-30
  • while until 循环用法和 case 条件base编程

    写一个脚本: (1)能接受四个参数:start、stop、restart、status 输入start输出starting,脚本名为finished (2)其它任意参数均报错退出 #!bin/bash #author:jian #date:2017-11-12 #discription: read -p “please input a strin…

    Linux干货 2017-11-14
  • PHP字符串的编码问题

        大家都知道,不同字符编码,其在内存占用的字节数不一样。如ASCII编码字符占用1个字节,UTF-8编码的中文字符是3字节,GBK为2个字节。     PHP 也自带几种字符串截取函数,其中常用到的就是 substr 和 mb_substr。     使用substr截取中…

    Linux干货 2015-10-22
  • Corosync+Pacemaker+DRBD实现高可用 Mariadb

    一、DRBD简介 DRBD全称Distributed Replicated Block (分布式的复制块设备),开源项目。它是一款基于块设备的文件复制解决方案,速度比文件级别的软件如NFS,samba快很多,而且不会出现单点故障,是很多中小企业的共享存储首选解决方案。 二、DRBD的工作模式从上图中我们可以清楚的看到DRBD是工作在内核中,将协议建立在buf…

    2017-11-05

评论列表(1条)

  • 马哥教育
    马哥教育 2016-08-05 16:57

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