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

相关推荐

  • Centos7基于虚拟主机的Lamp配置bbs、Blog、PhpMyAdmin应用程序

    Centos7实现基于虚拟主机的各应用程序搭建: 一、配置三个基于名称的虚拟主机;      (a) discuzX      (b) wordpress      (c) https: phpMyAdmin 1.安装Lamp环境及安装mo…

    Linux干货 2016-10-09
  • IO模型——进程工作的方式

    I/O模型 模型:阻塞型、非阻塞型、复用型、信号驱动型、异步 同步/异步: 关注消息通知机制      消息通知:          同步:等待对方返回消息       &nbsp…

    Linux干货 2016-10-25
  • N21天天第十四周课程练习

    系统的INPUT和OUTPUT默认策略为DROP; #把默认策略设置为DROP [root@localhost ~]# iptables -P INPUT DROP [root@localhost ~]# iptables -P OUTPUT DROP 1、限…

    Linux干货 2016-12-05
  • Linux前端包管理器—yum

    Yum(Yellow dog Updater, Modified)由Duke University团队,修改Yellow Dog Linux的Yellow Dog Updater开发而成,是一个基于RPM包管理的字符前端软件包管理器。能够从指定的服务器自动下载RPM包并且安装,可以处理依赖性关系,并且一次安装所有依赖的软件包,无须繁琐地一次次下载、安装。 介…

    Linux干货 2016-08-29
  • 推荐-运维学习笔记-Puppet应用配置的工作原理

    背景知识 Puppet的核心功能是配置管理。一般来说,用户在master上集中做配置,同时,被管理节点上的agent会定期从master上下载配置数据,再应用(apply)到本地,从而使管理节点的状态(用户,组,文件,安装包,服务等的设置和运行状态)与masters上定义的保持一致。 有时,出于测试的目的,并不希望真的应用配置,那么就需要执行puppet a…

    2016-06-01
  • http状态码大全

    状态值:100 客户端应当继续发送请求。这个临时响应是用来通知客户端它的部分请求已经被服务器接收,且仍未被拒绝。客户端应当继续发送请求的剩余部分,或者如果请求已经完成,忽略这个响应。服务器必须在请求完成后向客户端发送一个最终响应。 状态值:101 服务器已经理解了客户端的请求,并将通过Upgrade 消息头通知客户端采用不同的协议来完成这个请求。在发送完这个…

    Linux干货 2016-11-01

评论列表(1条)

  • luoweiro
    luoweiro 2016-11-30 22:27

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