几个正则表达式和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

相关推荐

  • N25期—第五周作业

    1、 显示当前系统上root、fedora或user1用户的默认shell; grep -E "^(root|fedora|user1):" /etc/passwd | cut -d: -f7 2、找出/etc/rc.d/init.d/functions文件中某单词后面…

    Linux干货 2017-01-02
  • zabbix 自动注册(registration)实例

    原理: Zabbix_agnetd ==> Zabbix_server 【agnet自动发数据到server端】 实现目的:zabbix 根据计算机名称识别如(XLH-PROD-XXX)条件,自动添加相关服务器(组group+相关监控模板)  部署步骤 1.创建新的模板,主机组 1.1 新增或模板【组态】【模板】手选一个模板 如果已…

    Linux干货 2016-09-15
  • 数据结构- 串的模式匹配算法:BF和 KMP算法

    Brute-Force算法的思想 1.BF(Brute-Force)算法   Brute-Force算法的基本思想是: 1) 从目标串s 的第一个字符起和模式串t的第一个字符进行比较,若相等,则继续逐个比较后续字符,否则从串s 的第二个字符起再重新和串t进行比较。 2) 依此类推,直至串t 中的每个字符依次和串s的一个连续的字符序列相等,则称模式匹…

    Linux干货 2015-04-07
  • 正则表达式 小结

    听老师和学姐都说,正则表达式很重要,所以这次我总结一下,同时加强一下记忆。 目前我们学的正则表达式有:字符匹配;匹配字数;位置锚定。 :. 匹配任意单个字符 [] 匹配指定范围内的任意单个字符 [^] 匹配指定范围外的任意单个字符 [:alnum:] 或 [0-9a-zA-Z] [:alpha:] 或 [a-zA-Z]…

    2017-07-31
  • 循环语句

    冯罗伊曼体系架构 1. 输入设备 2. 输出设备 3. 存储器 4. 运算器 5. 控制器 转义序列:\\, \t , \r , \n , \”,  \’ Python:是动态语言,强类型语言 算数运算符 + – */ % ** /是自然除,//是整除 位运算符 & |  ~  ^  <<  >> 原码 5=&gt…

    Linux干货 2018-03-26
  • rpm及yum

    库文件 查看二进制程序所依赖的库文件: ldd /PATH/TO/BINARY_FILE [root@localhost ~]# ldd /bin/bash 管理及查看本机装载的库文件: ldconfig /sbin/ldconfig -p:  显示本机已经缓存的所有可用库文件 名及文件路径映射关系 配置文件:/etc/ld.so.conf, /e…

    Linux干货 2016-08-29