第五周博客作业

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

[root@localhost ~]# grep -E "^(root|fedora|user1)\>" /etc/passwd | cut -d: -f1,7
root:/bin/bash
fedora:/bin/bash
user1:/bin/bash

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

[root@localhost ~]# grep -E "[_[:alnum:]]+\(\)" /etc/rc.d/init.d/functions

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

取出基名:
[root@localhost ~]# echo "/etc/rc.d/init.d/functions" | grep -E  -o "[^/]+/?$"
functions
取出路径名:
[root@localhost ~]# echo "/etc/rc.d/init.d/functions" | grep  -o "^.*/"
/etc/rc.d/init.d/

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

[root@localhost ~]# ifconfig | grep -E "\<([0-9]|[0-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|2[0-5][0-5])\>"

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

[root@localhost tmp]# ifconfig | grep -E -o "\<((1?[0-9][0-9]?|2[0-4][0-9]|25[0-4])\.){3}(1?[0-9][0-9]?|2[0-4][0-9]|25[0-4])\>"
192.168.0.129
127.0.0.1

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

[root@localhost tmp]# cat mail
1234@qq.com
63737erijrji@yahoo.com.cn
989898#$@hotmail.com
ffd893@abc.org.cn
qq112qq112qq112qq112qq112qq112qq112qq112qq112qq112qq112qq112
[root@localhost tmp]# grep -E "[^[:space:]].*@[^[:space:]].*" mail
1234@qq.com
63737erijrji@yahoo.com.cn
989898#$@hotmail.com
ffd893@abc.org.cn

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

[root@localhost ~]# find /var -user root -a -group mail -ls
50331800    4 drwxrwxr-x   2 root     mail         4096 Dec 20 03:57 /var/spool/mail

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

[root@localhost ~]# find / \( -nouser -o -nogroup \) -type f

最近3天内曾被访问过的文件或目录

[root@localhost ~]# find / \( -nouser -o -nogroup \) -atime -3

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

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

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

[root@localhost ~]# find /etc -size +1M -a -type f

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

[root@localhost ~]# find /etc/init.d/ -perm -111 -a -perm -002

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

[root@localhost ~]# find /usr -not \( -user root -o -user bin -o -user hadoop \) -ls
135247738    0 drwx------   2 polkitd  root           65 Nov  8 09:13 /usr/share/polkit-1/rules.d
2125565   16 -rwsr-sr-x   1 abrt     abrt        15336 Dec  1  2015 /usr/libexec/abrt-action-install-debuginfo-to-abrt-cache

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

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

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

[root@localhost ~]# find /etc -mtime -7 -a -not \( -user root -o -user hadoop \) -ls

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

(0)
N25_PierceN25_Pierce
上一篇 2017-01-06 23:17
下一篇 2017-01-07 14:22

相关推荐

  • 逻辑卷实战演练

    1、创建一个至少有两个PV组成的大小为20G的名为testvg的VG;要求PE大小为16MB, 而后在卷组中创建大小为5G的逻辑卷testlv;挂载至/users目录 2、新建用户archlinux,要求其家目录为/users/archlinux,而后su切换至archlinux用户,复制/etc/pam.d目录至自己的家目录 3、扩展testlv…

    Linux干货 2016-09-01
  • 用户创建过程&grep练习

    1、复制/etc/skel目录为/home/tuser1,要求/home/tuser1及其内部文件的属组和其它用户均没有任何访问权限。     ~]# cp -r /etc/skel /home/tuser1     ~]# ls -la /home/tuser1  &…

    Linux干货 2016-10-17
  • TCP协议详解

    TCP协议详解。     I,TCP数据段报文解释 1,tcp数据段头部20(固定)+40(可变)字节构成,此数据由报头偏移位构成,计算单位为四个字节 表示TCP报文段的首部长度,共4位,由于TCP首部包含一 个长度可变的选项部分,需要指定这个TCP报文段到底有多长。它指 出 TCP 报文段的数据起始处距离 TCP 报文段的起始处有多远。…

    Linux干货 2017-06-26
  • nfs实验

    实验要求: (1) 创建一个共享mydata,路径为/mysql/data,客户端1挂载至/mydata;而后客户端1主机安装mysql或mariadb,将数据目录设定为/mydata,要确保mysql服务能正常 运行,但数据目录位于nfs server上; (2) 客户端2主机使用类似客户端1主机的方式挂载mydata共享至本地的/mydata目录,而后,…

    Linux干货 2016-10-24
  • N25第六周 vim,crontab命令的使用

    请详细总结vim编辑器的使用并完成以下练习题 vim是一款功能强大的文本编辑器,是程序员的必备神器。 vim工作模式分为三种:编辑模式,输入模式,末行模式,三种工作模式可以进行来自由切换     编辑模式—》输入模式: 直接键i      输入模式—》…

    Linux干货 2016-12-29
  • 用户及用户组管理使用的练习

    用户及用户组管理使用的练习 1、列出当前系统上所有已经登录的用户的用户名,注意:同一个用户登录多次,则只显示一次即可。 先使用who得出登陆用户,通过uniq去重。 [root@mail ~]# who | grep -E -o “^[[:alnum:]]+” | uniq root 2、取出最后登录到当前系统的用户的相关信息。 思路:首先使用who取得最后…

    Linux干货 2018-03-18

评论列表(1条)

  • 马哥教育
    马哥教育 2017-02-17 10:59

    写的很好,排版也很棒,继续加油保持