第五周博客作业

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
下一篇 2017-01-07

相关推荐

  • 如何监控Linux文件系统事件:inotify使用指南

    如何监控Linux文件系统事件:inotify使用指南 §·inotify初识 Inotify 是一个 Linux特性,它监控文件系统操作,比如读取、写入和创建。Inotify 反应灵敏,用法非常简单,并且比 cron 任务的繁忙轮询高效得多。学习如何将 inotify 集成到您的应用程序中,并发现一组可用来进一步自动化系统治理的命令行工具。 §·inoti…

    Linux干货 2016-10-30
  • Linux基础

    Linux入门以及文件重定向、用户管理、软件管理等

    Linux干货 2018-03-17
  • N26-第六周博客

    vim编辑器及简单shell脚本示例 请详细总结vim编辑器的使用并完成以下练习题 1、复制/etc/rc.d/rc.sysinit文件至/tmp目录,将/tmp/rc.sysinit文件中的以至少一个空白字符开头的行的行首加#; [root@localhost tmp]# vim rc.sysinit:%s@^[[:space:]]\+[^[:s…

    系统运维 2017-02-16
  • shell脚本编程2

    八、条件选择if语句     注:if语句可嵌套     单分支         if 判断条件;then        &nbs…

    Linux干货 2016-08-22
  • Linux发行版的基础目录名称命名法则及功用规定

    /bin  存储单用户维护模式还能操作的命令 /boot 存储开机时会使用到的文件 /dev  存储设备与接口文件 /etc  存储系统的配置文件 /home 系统默认的用户主目录 /lib  存储函数库文件 /media 光盘挂载点 /mnt   光盘或者U盘挂载点 /opt   第三方应用程序文件存放目录 /root  root用户家目录 /sbin  …

    Linux干货 2018-03-04

评论列表(1条)

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

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