week5:grep命令和find命令的应用

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

 ~]# grep -E "^(root|fedora|user1):" /etc/passwd|cut -d/ -f4

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

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

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

   ~]# echo "/etc/rc.d/init.d/functions" |grep -E -o "[^/]+/?$" 

  扩展:取出其路径名   

   ~]# echo "/etc/rc.d/init.d/functions" |grep -E -o "^\/.*\/" 

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

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

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

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

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

   ~]# grep -E -o '\<[[:alnum:]]+@[[:alnum:]]+\.[[:alnum:]]+\>'

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

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

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

   ~]#find / -nouser -o -nogroup 

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

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

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

   ~]# find /etc/ -perm +222

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

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

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

   ~]# find /etc/init.d/ -perm -111 -a -perm -002 –ls

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

   ~]# find /usr -not \( -user root -o -user bin -o -user hadoop \)

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

 ~]# find /etc/ -perm -222

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

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

原创文章,作者:N24_云淡风轻,如若转载,请注明出处:http://www.178linux.com/61312

(0)
N24_云淡风轻N24_云淡风轻
上一篇 2016-11-28 18:01
下一篇 2016-11-28 20:04

相关推荐

  • 马哥网络班21期,第三周作业

    1、列出当前系统上所有已经登录的用户的用户名,注意:同一个用户登录多次,则只显示一次即可。     who | cut -d " " -f1 | sort -u     who:查看当前系统所有用户的会话     cut:剪切命令       cut…

    Linux干货 2016-07-26
  • Linux之账号管理

    Linux之账号管理 一、新增与删除用户:useradd,相关配置文件,passwd,usermod,userdel 在Linux登录系统时会输入账号和密码,所以创建用户也需要这两个数据。新建用户用useradd命令,密码的给予则用passwd命令。 useradd 1.添加新用户 -u: -u  uid username 创建用户时指定uid(如…

    2017-07-23
  • 二、(3)Linux的文件与数据之:元数据

    文件的元数据 在Linux的文件系统中,数据可分为两大类:数据和元数据 数据:泛指普通文件中的实际数据 元数据:用来描述一个文件的特征的系统数据 这样抽象的描述并不能很清楚地表示元数据的定义,所以下面将借助stat命令进行举例说明: stat命令 stat – display file or file system status(用于展示文件或文…

    2018-01-11
  • 第四周作业

    Linux系统文件管理使用案例 1、 复制/etc/skel目录为/home/tuser1,要求/home/tuser1及其内部文件的属组和其它用户均没有任何访问权限。 首先,利用cp命令将/etc/skel目录复制为/home/tuser1: [root@localhost ~]# cp -r /etc/skel /home/tuser1 随后通过chmo…

    Linux干货 2018-03-24
  • 马哥linux0805作业内容

    在/date/testdir/里穿件的新文件自动属于g1组,组g2的成员如:alice能对这些新文件有读写权限,组g3的成员如:tom只能对新文件有读权限,其他用户(不属于g1,g2,g3)不能访问这个文件夹 设置user1,使之新建文件权限为rw——- 3.设置/testdir/f1的权限,使user1用户不可以读写执行,g1组可以…

    Linux干货 2016-08-11
  • ansible

    ansible 安装ansible 查看当前的系统版本 yum install redhat-lsb-core -y [root@localhost httpd]# lsb_release -a LSB Version: :core-4.1-amd64:core-4.1-noarch Distributor ID: CentOS Description: C…

    Linux干货 2017-07-09

评论列表(1条)

  • 马哥教育
    马哥教育 2016-12-14 15:55

    博客完成的非常好,经验就来自于不断的实验的,反复的实验,加油!