马哥教育网络班20期+第5周课程练习

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

egrep '^[[:space:]]+' /boot/grub/grub.conf

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

egrep '^#[[:space:]]+[^[:space:]]+' /etc/rc.d/rc.sysinit

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

netstat -tan |grep  'LISTEN[[:space:]]*'

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

[root@scm-dzm ~]# useradd bash
[root@scm-dzm ~]# useradd testbash
[root@scm-dzm ~]# useradd basher
[root@scm-dzm ~]# useradd -s /sbin/nologin nologin
[root@scm-dzm ~]# egrep --color=auto '^(\<[[:alnum:]]+\>).+\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:501:501::/home/bash:/bin/bash
nologin:x:504:504::/home/nologin:/sbin/nologin

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

[root@scm-dzm ~]# egrep '^root|^fedora|^user1' /etc/passwd |cut -d: -f 7

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

grep --color=auto '[[:alnum:]]\+()' /etc/rc.d/init.d/functions

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

    扩展:取出其路径名

    以下方式绝对路径为/etc/passwd/或者/etc/passwd均可

    [root@scm-dzm ~]# echo "/etc/passwd/" | egrep --color=auto -o  "[[:alnum:]]+" |tail -1
    [root@scm-dzm ~]# echo "/etc/passwd/" | egrep --color=auto -o  "^(/[[:alnum:]]+)+" |egrep --color=auto -o  "^/([[:alnum:]]+/)+"

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

[root@scm-dzm ~]# ifconfig |egrep --color=auto '\<[1-9][0-9]?\>|\<1[0-9]{2}\>|\<2[0-4][0-9]\>|\<25[0-5]\>'

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

[root@scm-dzm ~]# ifconfig |egrep --color=auto '(\<[0-9][0-9]?\>\.|\<1[0-9]{2}\>\.|\<2[0-4][0-9]\>\.|\<25[0-5]\>\.){3}(\<[0-9][0-9]?\>|\<1[0-9]{2}\>|\<2[0-4][0-9]\>|\<25[0-5]\>)'

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

[root@scm-dzm ~]# echo "[email protected] [email protected] d@z [email protected] [email protected]" |egrep --color=auto -o '[[:alnum:]]+_?[[:alnum:]]+@[[:alnum:]]+\.[[:alnum:]]+'
[email protected]
[email protected]
[email protected]
[email protected]

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

[root@scm-dzm ~]# find /var -user root -group mail -exec ls -ld {} \;  
drwxrwxr-x. 2 root mail 4096 Jul  5 11:34 /var/spool/mail
-rw-------. 1 root mail 626 Jun 23 15:21 /var/spool/mail/root

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

[root@scm-dzm home]# find / \( -nouser -o -nogroup \) -exec ls -ld {} \;
-rw-rw----. 1 507 mail 0 Jul  5 13:37 /var/spool/mail/user2
drwx------. 4 507 507 4096 Jul  5 13:37 /home/user2
-rw-r--r--. 1 507 507 18 Oct 16  2014 /home/user2/.bash_logout
drwxr-xr-x. 2 507 507 4096 Nov 12  2010 /home/user2/.gnome2
-rw-------. 1 507 507 31 Jul  5 13:37 /home/user2/.bash_history
-rw-r--r--. 1 507 507 124 Oct 16  2014 /home/user2/.bashrc
-rw-------. 1 507 507 605 Jul  5 13:37 /home/user2/.viminfo
-rw-r--r--. 1 507 507 176 Oct 16  2014 /home/user2/.bash_profile
drwxr-xr-x. 4 507 507 4096 Jun 23 22:33 /home/user2/.mozilla
drwxr-xr-x. 2 507 507 4096 Aug 18  2010 /home/user2/.mozilla/extensions
drwxr-xr-x. 2 507 507 4096 Aug 18  2010 /home/user2/.mozilla/plugins
-rw-rw-r--. 1 507 507 5 Jul  5 13:37 /home/user2/newfile.txt

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

     
[root@scm-dzm home]# find / \( -nouser -o -nogroup -a -atime -3 \) -exec ls -ld {} \;

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

[root@scm-dzm home]# find /etc/ \( -perm -222 \) -exec ls -ld {} \;

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

[root@scm-dzm home]# find /etc/ \( -size +1M -a -type f \) -exec ls -lh {} \; 
-rw-r--r--. 1 root root 2.2M Jun 23 22:57 /etc/gconf/gconf.xml.defaults/%gconf-tree.xml
-rw-r--r--. 1 root root 7.8M Jun 23 22:51 /etc/selinux/targeted/policy/policy.24
-rw-r--r--. 1 root root 7.8M Jun 23 22:51 /etc/selinux/targeted/modules/active/policy.kern

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

[root@scm-dzm home]# find /etc/init.d/ \( -perm -111 -a -perm -002 \)  -exec ls -l {} \;

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

[root@scm-dzm home]# find /usr/ -not \( -user root -o -user bin -o -user hadoop \) -exec ls -l {} \;

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

[root@scm-dzm testdir]# find ./ -not  -perm -222 -exec ls -l {} \;

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

[root@scm-dzm testdir]# find /etc/ 
-mtime -7 -not -user root -not -user hadoop

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

(0)
Net20_天意Net20_天意
上一篇 2016-07-07 10:48
下一篇 2016-07-07 10:48

相关推荐

  • find命令详解

    find命令详解 基本介绍 find命令用来从目录系统中查找文本不同于locate,find不从数据库中查找文件,所以find速度略逊于locate,但find是实时且准确的,而且不需要占用系统资源进行遍历文件。 其标准格式如下 find [-H] [-L] [-P] [-D debugopts] [-O level] [path…] [expressi…

    Linux干货 2017-04-09
  • rsyslog记录日志于mysql

    rsyslog记录日志于mysql:     前提:准备好msql server或mariadb server;     (1) 安装rsyslog连接至mysql server的驱动模块;        &n…

    Linux干货 2016-12-05
  • 从增删改查角度学习linux基础命令

    从增删改查角度学习linux基础命令   本文从文件的增加、删除、修改、查询四个角度介绍linux的基本命令,介绍如下:   一.增 touch命令是最常用的创建文件的命令,它的常见参数如下: -a 或–time=atime或–time=access或–time=use  只更改存取时间。 -c 或&#…

    2017-07-15
  • 马哥教育第二周 4.8

    > 覆盖内容   只对文件有用 2> 错误覆盖内容 >> 追加覆盖内容  可以创建空文件 >文件 2>&1 错误正确放到一个文件、 (x;x)> 文件 可以把多个放到一个文件 cd  /misc/cd/ 挂载光盘 断网情况下 把服务重启 systemctl restart network ~ – …

    Linux笔记 2018-04-08
  • Linux的初步认识

         Linux的哲学思想 (1)一切都是一个文件(包括硬件) (2)小型,单一用途的程序 (3)链接程序,共同完成复杂的任务 (4)避免令人困惑的用户界面 (5)配置数据储存在文本中 1.Linux分为普通用户和root用户 普通用户:权利非常有限对系统的损害比较小 root用户:被称作为超级用户,对系统接近完整的控制,对…

    2017-05-20
  • Tomcat及Tomcat集群

    Tomcat集群实现的三种方式 配置 Tomcat1 配置环境 ip a add 192.168.88.101/24 dev ens33 yum install ntpdate -y ntpdate 172.16.0.1 安装java yum install java-1.8.0-openjdk-devel -y 安装tomcat yum install t…

    Linux干货 2017-07-08

评论列表(2条)

  • 马哥教育
    马哥教育 2016-07-07 11:21

    写的很好,排版也很棒,但是有的问题有点小瑕疵,在检查一下 加油

    • Net20_天意
      Net20_天意 2016-07-07 15:47

      @马哥教育又有瑕疵了。。。要想完美不容易呢