find和grep命令练习

                                find和grep命令练习

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

  • ~]# cat /etc/passwd | egrep "^(root|fedora|user)" | cut -d: -f7

  • /bin/bash

  • /bin/bash

  • /bin/bash

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

  • ~]# cat /etc/rc.d/init.d/functions | grep "\<[[:alpha:]]+()"

  • checkpid() {

  • daemon() {

  • killproc() {

  • pidfileofproc() {

  • pidofproc() {

  • status() {

  • success() {

  • failure() {

  • passed() {

  • warning() {

  • action() {

  • strstr() {

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

  • ~]# echo /etc/rc.d/init.d/functions | cut -d"/" -f5

  • functions

  • 扩展:取出其路径名

  • ~]# echo /etc/rc.d/init.d/functions |egrep -o ".*t.d/"

  • /etc/rc.d/init.d/

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

  • ~]# ifconfig | egrep -o "[1-9]|[1-9][0-9]|1[0-9][0-9]|2[0-5][0-5]"

  • 167

  • 77

  • 73

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

  • ~]# ifconfig | egrep -o '[1-9]{1,3}.[0-9]{1,3}.[0-9]{1,3}.[0-9]{1,3}'

  • 192.168.0.7

  • 255.255.255.0

  • 127.0.0.1

  • 255.0.0.0

  • 192.168.122.1

  • 255.255.255.0

  • 192.168.122.255

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

  • ~]# egrep "^[[:alnum:]]+@[[:alnum:]]+.[[:alnum:]]+$"

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

  • ~]# find /var/ -user root -group mail -ls

  • 2752708 4 drwxrwxr-x 2 root mail 4096 10月 17 12:44 /var/spool/mail

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

  • ~]# find -nouser -o -nogroup -ls

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

  • ~]# find -nouser -o -nogroup -a -atime 3 -ls

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

  • ~]# find /etc/ -perm /222 -type f -ls

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

  • ~]# find /etc/ -size +1M -type f |xargs ls -lh

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

  • ~]# find /etc/init.d/ -perm /113 -type f -ls

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

  • ~]# find /usr/ -not -user root -a -not -user bin -a -not -user hadoop -ls

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

  • ~]# find /etc/ -not -perm -111 -type f -ls

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

  • ~]# find /etc/ -mtime -7 -not -user root -a -not -user hadoop

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

(4)
shiyekunshiyekun
上一篇 2016-10-23
下一篇 2016-10-23

相关推荐

  • 面向对象魔术方法

    ##**特殊属性**– __name__ 类、函数、方法等的名字– __module__ 类定义所在的模块名– __class__ 对象或类所属的类– __bases__ 类的基类的元组,顺序为它们在基类列表中出现的顺序– __doc__ 类、函数的文档字符串,如果没有定义则为None–…

    Linux干货 2017-11-21
  • Linux第二周学习博客作业

    对第二周学习的内容进行总结

    Linux干货 2017-12-10
  • 基于Corosync + Pacemaker+DRBD实现MySQL高可用集群

    前言 在众多的高可用集群解决方案中,除了Heartbeat之外,Corosync也能提供类似于Heartbeat一样的功能,而且目前RedHat官方提供的高可用集群解决方案的程序包都以Corosync为主,所以今后Corosync会逐渐取代Heartbeat。本文带来的是基于Corosync + Pacemaker+DRBD的MySQL高可用集群解决方案。 …

    Linux干货 2015-06-12
  • 马哥教育网络班21期第10周课程练习

    1、请详细描述CentOS系统的启动流程(详细到每个过程系统做了哪些事情) POST加电自检—— 根据bios设定,顺序查找引导设备—— 读取引导设备MBR(共512字节,前446为bootloader,后64表示分区信息,后2表示bootloader有效性),加载bootloader程序—— 以grub为例,grub1.0阶段将零磁道一扇区加载到内存,gr…

    Linux干货 2016-10-24
  • 二进制安装mysql(mariadb)

    实验环境: ~]# lsb_release -a Distributor ID: CentOSDescription: CentOS Linux release 7.4.1708 (Core)Release: 7.4.1708Codename: Core 去官方下载mariadb: https://downloads.mariadb.org/ 本人将自己的文…

    2018-01-22
  • Linux内核编译过程详解

    前言 Linux内核是Linux操作系统的核心,也是整个Linux功能体现的核心,就如同发动机在汽车中的重要性。内核主要功能包括进程管理、内存管理、文件管理、设备管理、网络管理等。Linux内核是单内核设计,但却采用了微内核的模块化设计,支持内核线程以及动态装载内核模块的能力。 Linux作为一个自由软件,在广大爱好者的支持下,内核版本不断更新。新的内核修订…

    Linux干货 2015-04-01