N25-第五周作业

第五周作业


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

grep "^\(root|fedora|user1\)" /etc/passwd | cut -d: -f7

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

grep "\<[[:alpha:]]\+\>()" /etc/rc.d/init.d/functions

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

echo /etc/rc.d/init.d/functions | grep -o "[^/]\+/\?$"

扩展:取出其路径名

echo /etc/rc.d/init.d/functions | grep -o "^/[a-z]\+/[a-z].*/"

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

ifconfig | grep "\(\<[1-9][0-9]\>|\<1[0-9][0-9]\>|\<[1-9]\>|\<2[0-5][0-5]\>\\)"

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

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])\>"

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

grep -E "[^[:space:]].*@[^[:space:]].*"

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

find /var -user root -group mail

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

find / -type f \( -nouser -a -nogroup \) -ls

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

find / \( -nouser -a -nogroup -a -atime -3 \) -ls

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

find /etc/ -perm -222 -ls 全部都是链接文件

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

find /etc -type f -size +1M | xargs ls -lh

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

(0)
EasonEason
上一篇 2017-02-14 11:20
下一篇 2017-02-14 14:10

相关推荐

  • 软件安装包的管理

    rpm安装包的管理 rpm的数据库( 公共) :/var/lib/rpm 程序包名称及版本 依赖关系 功能说明 包安装后生成的各文件路径及校验码信息 安装 rpm:{-i} -v:显示详细信息 -h:以#显示程序包管理执行进度 rpm -ivh PACKAGE_FILE … [install-options] –test :测试安装,但不真正执行安装过程 –…

    Linux干货 2017-04-23
  • class-6 用户组管理(二) 权限管理

                      一、用户组管理  1、设置修改用户密码密码      设置密码     passwd [OPT…

    Linux干货 2016-08-05
  • 文件系统管理和挂载

    磁盘结构 设备类型:     块设备:block,存取单位“块”,例如,磁盘     字符设备:char,存取单位“字符”,键盘 设备文件:关联至一个设备驱动程序,进而能够跟之对应硬件设备进行通信 设备号码:     主设备号:major …

    Linux干货 2016-08-29
  • openssl基础应用

    参考http://www.178linux.com/2704 http://www.williamlong.info/archives/837.html 一、前言 什么是openssl?讲openssl之前我们先了解下什么是ssl?ssl是secure socket layer的简称,其使用对称加密解密,非对称加密解密(公钥加密解密),单向加密解密结合证书实…

    Linux干货 2015-09-27
  • Linux简述与部分基础命令

    Linux简述与基础命令

    Linux干货 2017-12-04
  • 编程语言编年史

          我们都知道,编程语言是一组用来定义计算机程序的语法规则。它是一种被标准化的交流语言,用来向计算机发出指令。一种计算机语言让程序员能够准确地定义计算机所需要使用的数据,并精确地定义在不同情况下所应当采取的行动。尽管人们多次试图创造一种通用的程序设计语言,却没有一次尝试是成功的。之所以有那么多种不同的编程语言存在的原因是…

    Linux干货 2017-03-30

评论列表(1条)

  • 马哥教育
    马哥教育 2017-03-30 14:11

    作业完成的很好,这两大利器在手,可以大幅提高文件处理的工作效率。