第五周:grep和find的使用练习

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

grep -E "^(root|fedora|user1)" /etc/passwd | cut -d: -f7
grep -E "^root|fedora|user1" /etc/passwd

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

grep  "[[:alpha:]]\+\(()\)" /etc/rc.d/init.d/functions
grep  "\<[[:alpha:]]\+\(()\)" /etc/rc.d/init.d/functions

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

    扩展:取出其路径名

echo "/etc/tmpfiles.d" | grep -o "/[^/]*/\?$"
echo "/etc/sysconfig/network-scripts/" | egrep -o "^(/[^/]+)+/"

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

 ifconfig | egrep -o "\<([1-9][0-9]|[1-2][0-9][0-9]|2[0-5][0-5])\>"

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

ifconfig | egrep -o "\<([1-9][0-9]|[1-2][0-9][0-9]|2[0-5][0-4])\>\.\<([1-9][0-9]|1[0-9][0-9]|2[0-5][0-4])\>\.\<([1-9][0-9]|1[0-9][0-9]|2[0-5][0-4])\>\.\<([1-9][0-9]|1[0-9][0-9]|2[0-5][0-4])\>"

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

echo "adsf adf aDDWD   liming.wang@wlm.com dwwf" | grep "[[:alpha:]\.]\+@[[:alpha:].]\+"

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

find /var -user root -a -group mail -ls

8、查找当前系统上没有属主或属组的文件;

find / -nouser -a -nogroup

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

    find / -atime -3 -nouser -a -nogroup

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

 find /etc/ -perm -222 -ls

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

find /etc/ -type f  -perm -222 -type f

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

find /etc/init.d/ -type f  -perm -113

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

find /usr -type f ! -user root -a !  -user bin -a ! -user hadoop

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

find /etc/ -type f -perm /222 -ls
find /etc/ -type f -not -perm -222 -ls

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

find /etc/ -mtime -7 -a ! -user root -a ! -user hadoop

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

(0)
dawningdawning
上一篇 2016-10-25
下一篇 2016-10-26

相关推荐

  • N22-第六周博客作业

    请详细总结vim编辑器的使用并完成以下练习题 1、复制/etc/rc.d/rc.sysinit文件至/tmp目录,将/tmp/rc.sysinit文件中的以至少一个空白字符开头的行的行首加#; :%s@^[[:space:]]\+[^[:space:]]@#\1@g 或 :%s@^[[:space:]]\+[^[:space:]]@#&a…

    Linux干货 2016-09-26
  • DHCP简单阐述及配置实现方法

    DHCP是什么…… DHCP是Dynamic Host Configuration Protocol的缩写,它是TCP/IP协议簇中的一种,主要是用来给网络客户机分配动态的IP地址。 其主要功能是: 用于内部网络或网络服务供应商自动分配IP地址给用户 用于内部网络管理员作为对所有电脑作中央管理的手段 直接点就是,这些被…

    Linux干货 2016-12-05
  • LVS-net模型

    net模型拓扑图 注:rip的网关需指向DIP 搭建LVS net模式 基于httpd服务 首先准备三台主机 主机A 主机B 主机C 主机A(vs主机) 主机A设置两个IP 一个内网一个外网 #yum -y install ipvsadm #echo 1 > /proc/sys/net/ipv4/ip_forward :打开核心转发功能 #iptabl…

    Linux干货 2017-05-17
  • 系统启动流程与GRUB管理

    系统启动流程: POST–>读取BootSequence(BIOS),决定引导次序–>读取引导设备的Bootloader(MBR grubstage1–>stage1.5/boot/filkeststem)–>boot–>/boot/grub.conf–>磁盘分区读取 kernel(ramd…

    Linux干货 2016-09-13
  • Hadoop hdfs 分布式文件系统

    Hadoop简介:一个分布式系统基础架构,由Apache基金会开发。用户可以在不了解分布式底层细节的情况下,开发分布式程序。充分利用集群的威力高速运算和存储。Hadoop实现了一个分布式文件系统(Hadoop Distributed File System),简称HDFS。HDFS有着高容错性的特点,并且设计用来部署在低廉的(low-cost)硬件…

    Linux干货 2015-08-05
  • ansible基础应用

    ansible基础 一、运维主要工作 ansible聚集以上功能于一身,能够完整轻易的实现应用部署和批量命令功能,适用于主机数量不太多,再大的用puppet。 二、ansible特性 (1)模块化:调用特定的模块,完成特定任务; (2)基于python语言实现,由paramiko,PYYAML和JINJa2三个关键模块组成 (3)部署简单:agentless…

    Linux干货 2017-01-04