grep、find练习

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

[root@study ~]# cat /etc/passwd|grep -E "^(root|fedora|user1)"|cut -d: -f7
/bin/bash
/bin/bash
/bin/bash

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

 [root@study ~]# grep -E -o "\<[[:alpha:]]+\>\(\)" /etc/rc.d/init.d/functions
 checkpid()
 daemon()
 killproc()
 pidfileofproc()

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

[root@study ~]# echo "/etc/sysconfig/network-scripts/"|grep -o -E '[^/]+/?$'|cut -d/ -f1
network-scripts

扩展:取出其路径名

[root@study ~]# echo "/etc/sysconfig/network-scripts/"|grep -E '^/.*/$'
/etc/sysconfig/network-scripts/

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

[root@study ~]# ifconfig|grep -o -E '[1-9]|[1-9][0-9]|1[0-9]{1,2}|2[0-4][0-9]|25[0-5]'
167
77
73
6
……

5.写出一个模式,能匹配合理IP地址

[root@study ~]# ifconfig|grep -o -E '([1-9]|[1-9][0-9]|[1-9][0-9][0-9]|2[0-4][0-9]|25[0-4])\.([1-9]|[1-9][0-9]|[1-9][0-9][0-9]|2[0-4][0-9]|25[0-4])\.([1-9]|[1-9][0-9]|[1-9][0-9][0-9]|2[0-4][0-9]|25[0-4])\.([1-9]|[1-9][0-9]|[1-9][0-9][0-9]|2[0-4][0-9]|25[0-4])'
 192.168.235.128
 192.168.235.255

6.写一个模式,匹配邮件地址

[root@study ~]# grep -E -o "\<[A-Za-z0-9._%+-]+@[A-Za-z0-9.-]+\.[A-Za-z]{2,6}\>" mailadd 
141215@qq.com
2522nfsnf@163.com

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

[root@study var]# find /var/ -user root -group mail
/var/spool/mail

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

[root@study var]# find / -nouser -o -nogroup -a -atime 3

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

[root@study var]# find /etc/ -perm /020

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

[root@study var]# find /etc/ -size +1M -type f
/etc/udev/hwdb.bin
/etc/selinux/targeted/policy/policy.29

12.查找/usr目录下不属于root,bin或hadoop的文件

[root@study ~]# find /usr -not \( -user root -o -user bin -o -user hadoop \)
/usr/share/polkit-1/rules.d

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

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

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

[root@study ~]# fing /etc/ -ctime 7 -a -not \( -user root -o -user hadoop \)

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

(0)
N24_小康N24_小康
上一篇 2016-11-27
下一篇 2016-11-27

相关推荐

  • linux之文本处理工具

    今天来聊一聊关于linux中处理shell的文本工具,主要说说以下命令:  · 文件查看命令:cat、tac、  · 分页查看文件内容:more、less  · 显示文本前行或后行内容:head、tail  · 按列抽取文本:cut  · 合并文件:paste  · 文…

    2017-07-29
  • 高级文件系统管理1

    本部分内容主要讲述了高级文件系统的管理,包括设定文件系统配额,设定和管理软RAID设备,配置逻辑卷,设定LVM快照和btrfs文件系统。其中文件系统配额和软RAID在企业中使用的频率并不很高,作为熟练即可,而逻辑卷的创建和LVM快照是非常重要的内容,必须精通并完全理解其原理。至于btrfs文件系统是新兴的一种技术,作为了解即可。 一、知识整理 1、文件系统配…

    Linux干货 2016-08-29
  • 网络管理

    7层结构。三次握手,四次挥手。

    2017-12-17
  • sed的详细用法

    sed(Stream EDitor)是一款流编辑器,用来对文本进行过滤与替换操作。其原理是:通过文件或管道读取文件内容,但是sed默认并不直接修改源文件,而是一次仅读取文件的一行至模式空间(pattern space)根据sed指令进行编辑并输出结果后清除模式空间,即所有的操作都是在模式空间中进行的。 语法格式 sed [option]…&nb…

    Linux干货 2016-11-14
  • grep命令

    grep命令:grep(global search regular expression(RE) and print out the line,全面搜索正则表达式并把行打印出来)是一种强大的文本搜索工具,它能使用正则表达式搜索文本,并把匹配的行打印出来;grep搜索的结果被送到屏幕,不影响原文件内容。Unix的grep家族包括grep、egrep和fgrep…

    Linux干货 2016-08-08
  • 走进Linux(一)

    一、计算机基础 世界上第一台计算机于1946年诞生于美国宾夕法尼亚大学,名叫:ENIAC。     计算机主要由硬件系统和软件系统两部分组成:     1、组成硬件的五大部分:    控制器(Control):是整个计算机的中枢神经,其功能是对程序规定的控制信息进行解释,根据其要求进行控制,调度程序…

    Linux干货 2016-09-22

评论列表(1条)

  • luoweiro
    luoweiro 2016-11-30 22:27

    整体完成的不错,不过可以对grep做一下知识的总结,正则还是需要多练习掌握的。