N26 第五周博客作业

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

演示:

    [root@263821a05cd9 /]# grep -E “^(root|fedora|user1)\>” /etc/passwd
    root:x:0:0:root:/root:/bin/bash
    [root@263821a05cd9 /]# grep -E “^(root|fedora|user1)\>” /etc/passwd |cut -d: -f7
    /bin/bash

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

演示

    [root@node ~]# grep  -E -o  “[[:alnum:]]+()”  /etc/rc.d/init.d/functions
    checkpid()
    checkpids()
    kill()
    run()
    pidof()
    daemon()
    killproc()
    pidfileofproc()
    pidofproc()
    status()
    success()
    failure()
    passed()
    warning()
    stage()
    success()
    failure()
    passed()
    warning()
    action()
    strstr()
    file()
    true()
    false()
    sysctl()

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

演示

    [root@node ~]# basename /etc/sysconfig/
    sysconfig
    [root@node ~]# echo “/etc/sysconfig/” | grep -Eo “[^/]+/?$” | cut -d\/ -f1
    sysconfig
    [root@node ~]# basename /etc/fstab
    fstab
    [root@node ~]# echo “/etc/fstab” | grep -Eo “[^/]+/?$” | cut -d\/ -f1
    fstab

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

命令

    ifconfig | grep -Eo “\<([1-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\>”

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

演示:

    lc@Archlc [19:26:47] {~}
    –>$ cat iptest.txt
    223.129.46.238
    255.255.255.0
    127.0.0.1
    3479.88.3.2
    3.2.3.555
    lc@Archlc [19:27:44] {~}
    –>$ cat iptest.txt | grep -Eo “(\<([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\>.){3}(\<[0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\>”
    223.129.46.238
    255.255.255.0
    127.0.0.1

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

命令

根据这个网页 的说明,该模式为:

    “^([a-zA-Z0-9_-.+]+)@([a-zA-Z0-9_-.]+).([a-zA-Z]{2,5})$”

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

演示

    [root@node ~]# find /var -user root -a -group mail -ls
    33595998    0 drwxrwxr-x   2 root     mail           84 Feb 25 13:08 /var/spool/mail

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

命令

    find / -nouser -o -nogroup -ls
    find / ( -nouser -o -nogroup ) -atime -3 -ls

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

命令

    find /etc -perm -222 -type f -ls

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

演示

    [root@node ~]# find /etc -size +1M -type f
    /etc/udev/hwdb.bin
    /etc/selinux/targeted/contexts/files/file_contexts.bin
    /etc/selinux/targeted/policy/policy.30
    /etc/selinux/targeted/active/policy.kern

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

(0)
FSSlcFSSlc
上一篇 2017-03-05
下一篇 2017-03-05

相关推荐

  • 一点点RPM

    1、软件管理器简介          随着Linux的不断发展及越来越多的人投入到Linux大家庭中,软件管理器的作用对于还无法熟练掌握源码编译安装的人们还是显得尤为重要,同时,由Linux开发商在为其编译完成的软件包在某种程度上要比在网络上流传的软件包要安全的多;所以,掌握Li…

    Linux干货 2015-12-06
  • 网络理论基础

    一、网络概述   1、什么是网络     网络就是通过有线或无线技术将各种硬件设备连接起来进行数据传输的一种方式。   2、网络的分类     根据距离范围可以将网络划分为局域网和广域网。       局域网:传输距离较近,传输速率快。     &n…

    Linux干货 2016-01-11
  • DNS 的搭建 子域授权及转发(正向解析)

           dns(名称解析服务).它的作用就是将主机名解析成ip地址的过程,同时它是一个分布式,分层次的主机名管理架构。为了我们能更好的了解与理解,实验才是更好的。     安装部署DNS服务: 一.首先安装DNS服务器软件 bind,还有其他相关的软件包,有bind-libs(库文件),bin…

    2017-07-31
  • bash脚本之进阶

    bash脚本 1、终端打印 1、单双引号(echo) 双引号: ①在双引号里面打不出! ②双引号,可以在文本中使用“;”,“;”在bash中被用作命令定界符。 单引号: 变量替换在单引号中无效。 2、printf:不会自动添加换行符,要手动添加 如下: 结果: 3、补充: echo 要使用转义系列需要加e,!号除外 2、变量和环境变量 脚本语言通常…

    Linux干货 2016-11-28
  • 笔记–8.8 shell脚本编程

    shell编程注意事项  1,指令的执行是从上而下,从左而右的分析与执行  2,指令的下达时:指令,选项与参数之间的多个空白都会被忽略掉  3,空白行会被忽略掉,并且tab键所推开的空白同样视为空格键  4. 如果一行的内容太多,则可以使用『 \[Enter] 』来延伸至下一行  5,『 # 』可做为批注,任…

    Linux干货 2016-08-12
  • linux发展史

    linux发展史简介: 20世纪60年代,MIT开发分时操作系统(Compatible TIme-Sharing System),支持30台终端访问主机;     ~主机负责运算,而终端负责输入输出; 1965年,Bell实验室、MIT、GE(通用电气公司)准备开发Multics系统,为了同时支持3…

    Linux干货 2016-10-14

评论列表(1条)

  • 马哥教育
    马哥教育 2017-03-07 11:39

    亲,4题是1-255之间的数字哦!