第五周 练习

1、显示当前系统上rootfedorauser1用户的默认shell

1.  egrep "^(root|user1|fedora)" /etc/passwd|cut d: f7

 

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

1.  egrep "^[[:alpha:]]+\(\)" /etc/rc.d/init.d/functions

 

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

1.  ~]#echo "/etc/init.d/" | grep oE "[^/]+/?$"

2.  init.d/

3.  扩展:取出其路径名

4.  ~]#echo "/etc/init.d/" | grep o "/[A-Za-z0-9]\+.*/"

5.  /etc/init.d/

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

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

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

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

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

1.  ~]# echo "My Email:jinjianping@qq.com" | grep "\<[[:alpha:]]\+.*@[0-9a-z]\+\.[[:alpha:]]\+\>"

2.  My Email:jinjianping@qq.com

 

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

1.  ~]# find /var user root group mail ls

2.  134311219    4 drwxrwxrx   2 root     mail         4096 Nov 24 15:32 /var/spool/mail

3.  135420759    4 rw——-   1 root     mail         1355 Nov  9 15:45 /var/spool/mail/root

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

1.  ~]#  find / \( nouser o nogroup \) ls

2.  find: ‘/proc/5594/task/5594/fd/6’: No such file or directory

3.  find: ‘/proc/5594/task/5594/fdinfo/6’: No such file or directory

4.  find: ‘/proc/5594/fd/6’: No such file or directory

5.  find: ‘/proc/5594/fdinfo/6’: No such file or directory

6.  135441653    0 rwrw—-   1 3005     mail            0 Nov  5 18:21 /var/spool/mail/gentoo

7.  find: File system loop detected; ‘/home1 is part of the same file system loop as ‘/’. 

 

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

1.  ~]# find /  atime 3 \( nouser o nogroup  \) ls

2.  find: ‘/proc/5601/task/5601/fd/6’: No such file or directory

3.  find: ‘/proc/5601/task/5601/fdinfo/6’: No such file or directory

4.  find: ‘/proc/5601/fd/6’: No such file or directory

5.  find: ‘/proc/5601/fdinfo/6’: No such file or directory

6.  find: File system loop detected; ‘/home1 is part of the same file system loop as ‘/’.

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

 

1.  find /etc perm 222 ls

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

 

1.  find /etc   type f size +1M ls

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

 

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

12、查找/usr目录下不属于rootbinhadoop的文件;

1.   find /usr ! \( user root o user bin o user hadoop \) ls 

 

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

1.  find /etc/ \( ! perm +200 o ! perm +020 o ! perm +002 \) ls

 

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

1.  find /etc \( mtime 7 ! user root a ! user hadoop \) ls

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

(2)
N24_JJPN24_JJP
上一篇 2016-11-28
下一篇 2016-11-28

相关推荐

  • Linux基础(七)-软RAID,LVM,bash脚本之循环

    1.创建一个10G的分区,并格式为ext4的文件系统; (1)要求其block大小为2048,预留空间百分比为2,卷标为MYDATA,默认挂载属性包含acl;(2)挂载至/data/mydata目录,要求挂载时禁止程序自动运行,且不更新文件的访问时间戳; [root@localhost ~]# fdisk /dev/sdb We…

    Linux干货 2016-11-06
  • 细述LVM

     前言:     LVM(Logical Volume Manager)是基于内核的一种逻辑卷管理器,LVM适合于管理大存储设备,并允许用户动态调整文件系统大小。此外,LVM的快照功能可以帮助我们快速备份数据。LVM为我们提供了逻辑概念上的磁盘,使得文件系统不再关心底层物理磁盘的概念。 看图识LVM &nbs…

    Linux干货 2015-06-15
  • shell脚本编程基础之二(if、case、for、while、until、continue、break语句使用)

    在shell脚本编程中,我们可以根据命令的状态结果,判断要不要执行下一步,但是有时候要判断的问题不止一个,甚至对问题本身都要做判断;同时问题的结果有时也不止一个,这时要借助简单的逻辑与和逻辑或,就显得很无力;要完成复杂的任务,需要借助一定的流程控制:顺序执行、选择执行、循环执行、同时在脚本执行过程中,有用户交互输入的需; if语句 case语句 for语句 …

    Linux干货 2016-08-21
  • 数学集合–德摩根定律

    初中数学学过集合的概念: ~表示补集 ∩表示交集 ∪表示并集 ∈表示属于 !表示取反 条件: x属于C集合中之外的部分:~C 证明:   ∵x∈~C    x属于集合c的补集     x∈~(A∩B)    想属于a和b…

    Linux干货 2016-08-15
  • Linux 的硬链接与软链接的区别

       链接是指在电子计算机程序的各模块之间传递参数和控制命令,并把它们组成一个可执行的整体的过程。通俗一点无非是把文件名和计算机文件系统使用的节点号链接起来。   linux中链接有硬链接和软连接之分,首先我们来介绍硬链接,硬链接相当于创建了文件的第二个名字,增加了额外的记录项用来引用文件,还是隶属与同一文件系统上,是同一个物理…

    Linux干货 2016-10-20

评论列表(1条)

  • 马哥教育
    马哥教育 2016-12-14 16:22

    grep与find是基础命令,希望你能牢记,正则表达式主要是需要多练习的,加油!