22期第五周课堂练习

1、显示/boot/grub/grub.conf中以至少一个空白字符开头的行;

[root@localhost ~]# grep "^[[:space:]]\+" /boot/grub/grub.conf

2、显示/etc/rc.d/rc.sysinit文件中以#开头,后面跟至少一个空白字符,而后又有至少一个非空白字符的行;

[root@localhost ~]# grep "^#[[:space:]]\+[^[:space:]]" /etc/rc.d/rc.sysinit

3、打出netstat -tan命令执行结果中以‘LISTEN’,后或跟空白字符结尾的行;

[root@localhost ~]# netstat -tan |grep "LISTEN[[:space:]]*$"

4、添加用户bash, testbash, basher, nologin (此一个用户的shell为/sbin/nologin),而后找出当前系统上其用户名和默认shell相同的用户的信息;

[root@localhost ~]# grep "^\(\<.*\>\).*\1$" /etc/passwd
sync:x:5:0:sync:/sbin:/bin/sync
shutdown:x:6:0:shutdown:/sbin:/sbin/shutdown
halt:x:7:0:halt:/sbin:/sbin/halt
bash:x:3006:3006::/home/bash:/bin/bash
nologin:x:3009:3009::/home/nologin:/sbin/nologin

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

[root@localhost ~]# egrep "(root|fedora|user1)"  /etc/passwd |cut -d: -f 7
/bin/bash
/sbin/nologin
/bin/bash
/bin/bash

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

[root@localhost ~]# grep "\<.*\>()" /etc/rc.d/init.d/functions

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

  基名:  

[root@localhost ~]# echo /etc/passwd |grep -E -o "[^/]+/?$"
passwd

  扩展:目录

  

第一种方法:
[root@localhost ~]# echo /etc/passwd |grep -E -o "[/][^/]+.*[/]"|cut -d / -f2
etc
第二种方法:
[root@localhost ~]# echo /etc/passwd |grep -E -o "/.*/"|cut -d / -f2
etc

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

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

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

[root@localhost ~]# ifconfig |egrep -o "[1-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[1-9]{0,1}[0-9]{1,3}"

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

[root@localhost tmp]# cat mailtest.txt 
aaa@xmgs.com
123cc@xmbf.com
1a111@163.com
[root@localhost tmp]# grep "[[:alnum:]]\+@[[:alnum:]]\+\.[[:alnum:]]\+" mailtest.txt 
aaa@xmgs.com
123cc@xmbf.com
1a111@163.com

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

[root@localhost tmp]# find  /var -user root -a -group mail -ls
131732    4 drwxrwxr-x   2 root     mail         4096 Sep  4 15:01 /var/spool/mail

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

[root@localhost tmp]# find / -nouser -o -nogroup -ls

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

[root@localhost tmp]# find / \( -nouser -o -nogroup \)  -atime -3

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

[root@localhost tmp]# find /etc/ -perm -222 -ls

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

[root@localhost tmp]# find /etc/  -size +1M -type f  -exec ls -lh {} \;
-rw-r--r--. 1 root root 2.2M Aug 22 18:36 /etc/gconf/gconf.xml.defaults/%gconf-tree.xml
-rw-r--r--. 1 root root 7.0M Aug 22 18:34 /etc/selinux/targeted/policy/policy.24
-rw-r--r--. 1 root root 7.0M Aug 22 18:34 /etc/selinux/targeted/modules/active/policy.kern

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

[root@localhost tmp]# find /etc/init.d -perm -113  -type f -ls

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

[root@localhost tmp]# find /usr -not \( -user root -o -user bin -o -user hadoop \) -type f -ls
1179570   12 -rwsr-xr-x   1 abrt     abrt         9904 Nov 23  2013 /usr/libexec/abrt-action-install-debuginfo-to-abrt-cach

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

[root@localhost tmp]# find /etc/ -not -perm 222 -type f -ls

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

[root@localhost tmp]# find /etc/ -mtime -7 -not \( -user root -o -user hadoop \) -type f -ls

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

(0)
a295053193a295053193
上一篇 2016-09-08 18:56
下一篇 2016-09-08 18:56

相关推荐

  • 搭建SSH服务器

    Linux 远程登录服务:sshSSH是标准的网络协议,可用于大多数UNIX操作系统,能够实现字符界面的远程登录管理,它默认使用22号端口,采用密文的形式在网络中传输数据,相对于通过明文传输的Telnet,具有更高的安全性。SSH提供了口令和密钥两种用户验证方式,这两者都是通过密文传输数据的。不同的是,口令用户验证方式传输的是用户的账户名和密码,这要求输入的…

    Linux干货 2017-07-24
  • Linux文件系统的最基本数据结构:inode和block

    Linux文件系统的最基本数据结构:inode和block 为什么有inode和block inode block 创建目录或文件 使用场景 查看本机的文件系统信息 Linux文件系统的最基本数据结构:inode和block 为什么有inode和block 由于Linux系统是多用户多的,所以文件系统类型多样化是在所难免的。从ext2开始,是将文件属性和文件…

    Linux干货 2016-09-06
  • Linux三剑客之grep

    grep(Globel Search Regular Expression and Printing out the line)全面搜索正则表达式并把行打印出来)是一个强大的文本搜索工具,使用正则表达式搜索文本的文本,并把结果打印出来。Unix家族包括grep、egrep和fgrep。egrep是扩张的正则表达式它支持更多的字符,fgrep是fast gre…

    Linux干货 2016-08-12
  • python Django分页

    自定义html_helper.py  —>  Page_helper类 #coding:utf-8 from django.utils.safestring import mark_safe class Page_Helper(object):    …

    Linux干货 2016-08-22
  • N24 W3 博客作业

    第三周 "   1、列出当前系统上所有已经登录的用户的用户名,注意:同一个用户登录多次,则只显示一次即可。 [root@localhost ~]# who | cut –d’ ‘ –f1 | uniq 2、取出最后登录到当前系统的用户的相关信息。 [root@localhost ~]# id `who | tail -n 1 | cut …

    Linux干货 2016-11-14
  • 面授20-1班 0805课间练习与课后作业

    课间练习 第一阶段 新学的命令文本命令cat tac rev more less head tail cut paste wc sort dif patch 1 、找出ifconfig 命令结果中本机的所有IPv4 地址 [root@IP70-CentOS7 ~]# >>ifconfig | tr&nbsp…

    Linux干货 2016-08-07

评论列表(1条)

  • 马哥教育
    马哥教育 2016-09-22 14:40

    匹配ip地址不对,没有好好听周日的分享吧,这个讲过的