几个正则表达式和find查找语句事例

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

~]# grep -E "^(root|bin|hadop)" /etc/passwd | cut -d: -f7

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

~]#grep -E -o "[[:alnum:]]+()" /etc/rc.d/init.d/functions

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

echo /etc/sysconfig/network | grep -E -o "[^/]+/?$"

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

~]#ifconfig | grep -E -o "<([1-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])>"

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

~]# ifconfig | grep -o -E '(([0-9]|[0-9][0-9]|1[0-9][0-9]|2[[0-4][0-9]|25[0-9]).){3}[0-9]{1,3}'

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

~]# grep -o -E '[[:alnum:]]+@[[:alnum:]]+(.[a-z]+){1,}' /tmp/mailtest

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

~]# find /var/ -user root -a -group mail

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

~]# find / -nouser -o -nogroup -atime 3

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

~]# find /etc -perm -222

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

~]# find /etc -size +1M -a -type f

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

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

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

~]# find /usr -not -user root -a -not -user bin -a -not -user hadoop -type f

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

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

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

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

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

(2)
oranixoranix
上一篇 2016-10-30 15:48
下一篇 2016-10-30 16:06

相关推荐

  • Python函数式编程指南(二):函数

    这是此系列的第二篇,试图说明在Python中如何更好地使用函数并引导诸位使用函数式的思维进行思考。掌握并应用这些内容,就已经是至少形似的函数式风格的代码了,至于思维么,这个真靠自己。 作者水平有限,如有错漏之处还请指出;转载请注明原作者和原地址:) 2. 从函数开始 2.1. 定义一个函数 如下定义了一个求和函数: def add(x, y): return…

    Linux干货 2015-03-11
  • 一周学会shell编程之小结1

    一周学会shell编程之小结1 内容: shell脚本创建与执行 变量 条件测试 if,case判断语句 练习   检查错误: bash -n path 调试执行: bash -x path   创建shell脚本步骤: 1 添加第一行 #!/bin/bash 2 给予…

    Linux干货 2016-08-15
  • 你收到来自一个来自noob的blog,请注意查收~

                  本人较为懒,部分内容为直接cp,勿怪                 图片借鉴余知乎某位深藏不漏的用户 关于ls命令输出结果的详解:     1 如何知道自己当前…

    2017-09-03
  • 第二周博客作业

      '经过了两周的学习,对Linux有了更深的认识,学习到了很多的新知识,在此进行总结。一、Linux上的文件管理类命令都有哪些,其常用的使用方法及相关示例演示。答:Linux常用的文件管理类命令主要有以下几个:  cp,mv,rm,mkdir,rmdir,install,touch;  cp命令:  作用是拷贝文件或文件夹,其用法为:  cp […

    Linux干货 2016-12-12
  • 条件判断if、case与文件查找locate、find及相关练习

    一、条件选择 1、if:按条件执行脚本中的内容,可以使用嵌套结构,有单分支、双分支和多分支结构,每个条件中可以有不止一条语句,如果有多条语句,可以用and(-a)或or(-o)连接在一起,但不能使用&&或||: if COMMANDS; then     COMMANDS;   &n…

    Linux干货 2016-08-18
  • 课堂练习及课后作业(0805文本处理工具)

    课堂练习: 1、找出ifconfig命令结果中本机的所有IPv4地址 2、查出分区空间使用率的最大百分比值 3、查出用户UID最大值的用户名、UID及shell类型 4、查出/tmp的权限,以数字方式显示 5、统计当前连接本机的每个远程主机IP的连接数,并按从大到小排序 grep 1、显示/proc/meminfo文件中以大小s开头的行;(要求:使用两种方式…

    Linux干货 2016-08-07