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

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

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


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

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

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

[root@totooco /]# netstat -tan | grep "LISTEN[[:space:]]\?"

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

[root@totooco6 ~]# grep '\(\<[[:alnum:]]\+\>\).*\1$' /etc/passwd

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

[root@totooco6 ~]# grep -E "^(root|fedora|user1)\>" /etc/passwd |cut -d: -f7

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

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

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

    扩展:取出其路径名

[root@totooco ~]# echo "/etc/sysconfig/network" | egrep -o "[^/]+/?$"
network
[root@totooco ~]# echo "/etc/sysconfig/network" | egrep -o ".*/"
/etc/sysconfig/

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

[root@totooco ~]# ifconfig |grep -E "\<[1-9]|[1-9][1-9]|1[1-9][1-9]|2[0-4][0-9]|25[0-5]\>"

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

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

[root@totooco ~]# grep -o "[^[:space:]]*@[^[:space:]]*" /var/spool/mail/root


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

[root@totooco ~]# find /var/ -user root -group mail

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

[root@totooco ~]# find / -nouser -nogroup
find: ‘/proc/6181/task/6181/fd/6’: 没有那个文件或目录
find: ‘/proc/6181/task/6181/fdinfo/6’: 没有那个文件或目录
find: ‘/proc/6181/fd/6’: 没有那个文件或目录
find: ‘/proc/6181/fdinfo/6’: 没有那个文件或目录

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

[root@totooco ~]# find / -nouser -nogroup -atime 3
find: ‘/proc/6183/task/6183/fd/6’: 没有那个文件或目录
find: ‘/proc/6183/task/6183/fdinfo/6’: 没有那个文件或目录
find: ‘/proc/6183/fd/6’: 没有那个文件或目录
find: ‘/proc/6183/fdinfo/6’: 没有那个文件或目录

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

[root@totooco ~]# find /etc/ -perm 222

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

[root@totooco ~]# find /etc -size +1M -type f
/etc/udev/hwdb.bin
/etc/selinux/targeted/policy/policy.29

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

[root@totooco ~]# find /etc/init.d -perm -113
/etc/init.d

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

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

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

[root@totooco ~]# find /etc/ -not -perm /222


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

[root@totooco ~]# find /etc/ -mtime -7 -a -not \( -user root -o -user hadoop \)


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

(0)
Net20_totoocoNet20_totooco
上一篇 2016-07-04 11:33
下一篇 2016-07-04 11:33

相关推荐

  • find总结及练习

    文件查找: 在文件系统上查找符合条件的文件; 文件查找:locate, find非实时查找(数据库查找):locate 实时查找:find locate: 依赖于事先构建的索引;索引的构建是在系统较为空闲时自动进行(周期性任务);手动更新数据库(updatedb); 索引构建过程需要遍历整个根文件系统,极消耗资源; 工作特点: 查找速度快; 模糊查…

    Linux干货 2016-07-22
  • Linux基本知识之Vim编辑器

    vim文本编辑器:    vim是Linux系统上的最著名的文本/代码编辑器,也是早年的vi编辑器的加强版,而gVim则是其windows版。它的最大特色是完全使用键盘命令进行编辑,脱离了鼠标操作虽然使得入门变得困难,但上手之后键盘流的各种巧妙组合操作却能带来极大幅度的效率的提升。 (1)打开文件与关闭文件:     …

    Linux干货 2016-08-10
  • shell脚本参数练习

    1、写一个脚本,判断当前系统上所有用户的shell是否为可登陆shell(即用户的shell不是/sbin/nologin),分别这两类用户的个数;通过字符串比较来实现; !/bin/bash # login_user=0 nologin_user=0 for i in $(cat /etc/passwd | cut -d : -f 7);do if [ $…

    2017-09-17
  • btrfs文件系统管理与应用

    btrfs(b-tree、butter fs、better fs),oracle公司研发的替代ext系列的cow机制的文件系统;GPL 核心特性: 多物理卷支持;btrfs可由多个底层物理卷组成;支持RAID,以联机“添加”、“移除”、“修改”; 写时复制更新机制(CoW):复制、更新及替换指针,而非“就地”更新; 数据及元数据校验码:checksum 子卷…

    Linux干货 2017-12-18
  • history          每打开一个终端都会从文件(.bash_history)中加载历史记录           不同终端历史记录不同彼此终端不共享 …

    2017-07-15
  • 端口转发实例

    什么是端口转发?      端口转发(Port forwarding),有时被叫做隧道,是安全壳(SSH) 为网络安全通信使用的一种方法。端口转发是转发一个网络端口从一个网络节点到另一个网络节点的行为,其使一个外部用户从外部经过一个被激活的NAT路由器到达一个在私有内部IP地址(局域网内部)上的一个端口。 为什么需要端口转发? …

    2017-04-13

评论列表(1条)

  • 马哥教育
    马哥教育 2016-07-04 13:47

    写的很好,排版很棒,加油