第五周作业

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

[root@unclez ~]#  grep -E "^[[:space:]]+.*" /boot/grub/grub.cong

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

[root@unclez boot]#  grep -E "^#[[:space:]]+[^[:space:]]+" /etc/rc.d/rc.sysinit

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

[root@unclez ~]# netstat -tan | grep -i "listen[[:space:]]*$"

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

[root@unclez ~]# useradd bash
[root@unclez ~]# useradd testbash
[root@unclez ~]# useradd basher
[root@unclez ~]# useradd -s /sbin/nologin nologin
[root@unclez ~]# cat /etc/passwd | tail -4
bash:x:1002:1002::/home/bash:/bin/bash
testbash:x:1003:1003::/home/testbash:/bin/bash
basher:x:1004:1004::/home/basher:/bin/bash
nologin:x:1005:1005::/home/nologin:/sbin/nologin

[root@unclez ~]# grep -E "^([^:]+\>).*\1$" /etc/passwd
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:1002:1002::/home/bash:/bin/bash
nologin:x:1005:1005::/home/nologin:/sbin/nologin

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

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

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

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

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

[root@unclez ~]# echo /etc/sysconfig/network-scripts | grep -E -o '[^/]+/?$'

扩展:取出其路径名

[root@unclez ~]# echo /etc/sysconfig/network-scripts | grep -E -o '^/([^/]+/)+'

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

[root@unclez ~]# 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地址;

[root@unclez ~]# 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])\>"

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

grep -E -o "\<[A-Za-z0-9_]+@[A-Za-z0-9.]+\.[A-Za-z]\>" mail

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

[root@unclez ~]# find /var -user root -group mail -ls

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

[root@unclez ~]# find / -nouser -nogroup -type f

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

[root@unclez ~]# find / -nouser -a -nogroup -a -atime -3

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

[root@unclez ~]# find /etc -perm 222 -type f -ls

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

[root@unclez ~]# find /etc -size +1M -type f | xargs ls -lh

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

[root@unclez ~]# find /etc/init.d -perm 113 -type f -ls

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

[root@unclez ~]# find /usr -not -user root -a -not -user bin -a -not -user hadoop

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

[root@unclez ~]# find /etc/ -not -perm /222 -type f -ls

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

[root@unclez ~]# find /etc -mtime -7 -a -not -user root -a -not -user hadoop -ls

原创文章,作者:N25-赵叔,如若转载,请注明出处:http://www.178linux.com/65471

(0)
N25-赵叔N25-赵叔
上一篇 2016-12-31
下一篇 2016-12-31

相关推荐

  • 用户和组

    用户和组 touch /etc/nologin     系统做维护时不想普通用户登录,就可以创建这个文件,也可以在里面写一些提示。     维护完之后删除这个文件就可以自动恢复      touch /run/nolog…

    Linux干货 2016-08-03
  • 集中练习6-bash脚本

    集中练习6-bash脚本

    Linux干货 2017-12-05
  • 十个让你变成糟糕的程序员的行为

    之前本站发表过《优秀程序员的十个习惯》以及《程序员需要具备的基本技能》,那是我们需要去学习和培养的。这里,我们主要讨论十个糟糕程序员的特征,主要是需要让我们去避免和小心的。 1) 情绪化的思维 如果你开始使用不同颜色的眼光来看待这个世界的话,那么你可能会成为一个很糟糕的程序员。情绪化的思维或态度很有可能会把自己变成一个怪物。相信你经常可以看到很多很糟糕的程序…

    Linux资讯 2015-04-03
  • shell脚本编程之数组

    bash仅支持一维数组,类型声明: declare -i    : 表示数值 declare -a  :表示普通数组(默认,可不用声明类型) declare -A :表示关联数组(必须声明类型,bash需4.0以上版本才支持,可通过bash –version查看版本) 一、普通数组(用数字为下标) 1.1数组赋值(修…

    Linux干货 2015-08-24
  • 初识LINUX

    初识LINUX 一、计算机的组成 二、Linux的发行版本 发行版:数百种之多,主要分为: Debian分支:ubuntu、mint、knopix Slackware分支:S.u.S.E–>SLES、OpenSUSE RedHat分支: Redhat–>Centos   Fedora Core Gent…

    Linux干货 2016-09-17
  • 详解 /etc/inittab 文件

    当内核初始化后,就会启动第一个进程 init,init进程会进行一系列的系统初始化工作,init是根据什么来进行初始化的? init 会读取/etc/inittab文件(针对CentOS 5 系列),执行里面的内容来进行初始化工作,这个文件是一定的格式。 获取inittab文件的帮助,输入 man inittab 命令 过滤掉空白行和以#号开始的行,内容如下…

    Linux干货 2015-03-10

评论列表(1条)

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

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