网络班N22期第五周博客作业

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

[root@bogon ~]# cat /etc/passwd | grep -E "^(root|fedora|user1)\>" | cut -d: -f 7
/bin/bash
/bin/bash

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

[root@bogon ~]# cat /etc/rc.d/init.d/functions | grep "\<[[:alpha:]]*()" | cut -d' ' -f1
checkpid()
daemon()
killproc()
pidfileofproc()
pidofproc()
status()
success()
failure()
passed()
warning()
action()
strstr()
confirm()

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

[root@bogon ~]# echo "/etc/sysconfig/network-scripts/ifcfg-eth0" | grep -o "[^/]\+$"
ifcfg-eth0

取出其路径名

[root@bogon ~]# echo "/etc/sysconfig/network-scripts/ifcfg-eth0" | grep -o "^.*/"
/etc/sysconfig/network-scripts/


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

[root@bogon ~]# ifconfig | egrep -o "\<[1-9]|[1-9][0-9]|1[0-9][0-9]|2[0-5][0-5]\>"
29
1
10
10
10
100
10
10
10
255
255
255
255
80
20
29
1
64
150

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

[root@bogon ~]# ifconfig | egrep -o "[1-9][0-9]?[0-9]?\.[0-9][0-9]?[0-9]?\.[0-9][0-9]?[0-9]?\.[0-9][0-9]?[0-9]?"
10.10.10.100
10.10.10.255
255.255.255.0
10.10.10.101
255.255.255.0
192.168.1.234
255.255.255.0
127.0.0.1
255.0.0.0


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

[root@bogon ~]# cat mail.txt 
asbd@qq.com
dsaf@139.com
mage@edu.com
test@163.com
dhskhdkf
kskshgksjgdh
[root@bogon ~]# cat mail.txt | egrep "[[:alnum:]]+@[[:alnum:]]+"
asbd@qq.com
dsaf@139.com
mage@edu.com
test@163.com

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

[root@bogon ~]# find /var -user root -group mail -ls
263166    4 drwxrwxr-x   2 root     mail         4096 Nov 28 04:17 /var/spool/mail
263915   72 -rw-------   1 root     mail        72437 Jun  3 02:00 /var/spool/mail/root

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

[root@bogon ~]# find / -nouser -o -nogroup 
/test.txt
/test
/root/nload-0.7.2
/root/nload-0.7.2/install-sh
/root/nload-0.7.2/aclocal.m4
/root/nload-0.7.2/ChangeLog
......
[root@bogon ~]# ll /test.txt 
-rw-r--r-- 1 5025 5025 15 Nov 21 13:01 /test.txt

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

[root@bogon ~]# find / -nouser -o -nogroup -a -atime -3
/test.txt
/test
/root/test.txt
......

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

[root@bogon ~]# touch /etc/test.txt
[root@bogon ~]# chmod 666 /etc/test.txt
[root@bogon ~]# find /etc -type f -perm -222 -ls
396003    4 -rw-rw-rw-   1 root     root            7 Nov 28 06:39 /etc/test.txt

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

[root@bogon ~]# find /etc -type f -size +1M -ls
394863 7124 -rw-r--r--   1 root     root      7292689 Jan 21  2015 /etc/selinux/targeted/modules/active/policy.kern
394866 7124 -rw-r--r--   1 root     root      7292689 Jan 21  2015 /etc/selinux/targeted/policy/policy.24
395770 1332 -rw-r--r--   1 root     root      1362271 Jan 28  2015 /etc/gconf/gconf.xml.defaults/%gconf-tree.xml

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

[root@bogon init.d]# find /etc/init.d/ -type f -perm -113 -ls
394214    0 -rwxr-xrwx   1 root     root            0 Nov 28 22:17 /etc/init.d/test.txt
396004    0 -rwxr-x-wx   1 root     root            0 Nov 28 22:17 /etc/init.d/test2.txt

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

[root@bogon ~]# find /usr/ -type f -not \( -user root -o -user bin -o -user hadoop \) -ls
1450330    0 -rw-r--r--   1 user1    user1           0 Nov 21 12:47 /usr/test
1469800   12 -rwsr-xr-x   1 abrt     abrt         9904 Nov 23  2013 /usr/libexec/abrt-action-install-debuginfo-to-abrt-cache

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

[root@bogon ~]# find /etc/ -type f -not -perm -222 -ls | head -10
393969    4 -rwxr-xr-x   1 root     root          233 Mar 18  2015 /etc/rc.d/rc.local
393962    8 -rwxr-xr-x   1 root     root         5866 Oct 10  2013 /etc/rc.d/init.d/halt
393865    4 -rwxr-xr-x   1 root     root         1698 Nov 23  2013 /etc/rc.d/init.d/sandbox
394410    8 -rwxr-xr-x   1 root     root         4621 Nov 13  2014 /etc/rc.d/init.d/sshd
395010    4 -rwxr-xr-x   1 root     root         2276 Apr  2  2013 /etc/rc.d/init.d/svnserve
393878   12 -rwxr-xr-x   1 root     root        10688 Nov 23  2013 /etc/rc.d/init.d/iptables
394529    4 -rwxr-xr-x   1 root     root         4043 Nov 23  2013 /etc/rc.d/init.d/autofs
394583    4 -rwxr-xr-x   1 root     root         3245 Jul  9  2013 /etc/rc.d/init.d/firstboot
394165    4 -rwxr-xr-x   1 root     root         2305 Nov 22  2013 /etc/rc.d/init.d/rpcidmapd
393916    4 -rwxr-xr-x   1 root     root         1513 Sep 17  2013 /etc/rc.d/init.d/rdisc

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

[root@bogon ~]# chown user1:user1 /etc/test.txt 
[root@bogon ~]# 
[root@bogon ~]# find /etc/ -type f -mtime -7 -not \( -user root -o -user hadoop \) -ls
396003    4 -rw-rw-rw-   1 user1    user1           7 Nov 28 06:39 /etc/test.txt


原创文章,作者:凸b男波万,如若转载,请注明出处:http://www.178linux.com/45317

(0)
凸b男波万凸b男波万
上一篇 2016-09-15 22:20
下一篇 2016-09-15 22:21

相关推荐

  • 安装Redmine

    Redmine是一个开源的、基于Web的项目管理和缺陷跟踪工具。它用日历和甘特图辅助项目及进度可视化显示。同时它又支持多项目管理。Redmine是一个自由开放源码软件解决方案,它提供集成的项目管理功能,问题跟踪,并为多个版本控制选项的支持。虽说像IBM Rational Team Concert的商业项目调查工具已经很强大了,但想坚持一个自由和开放源码的解决…

    Linux干货 2016-12-01
  • 文本处理学习小结

    抽取文本的工具 文件内容:less和cat 文件截取:head和tail 按列抽取:cut 按关键字抽取:grep 文件查看 复制标准输入到标准输出 文件查看命令:cat, tac,rev cat命令: cat [OPTION]… [FILE]… -E: 显示行结束符$ -n: 对显示出的每一行进行编号 -A:显示所有控制符 -b:非…

    Linux干货 2016-08-07
  • sed基础

    sed 是一种流编辑器,它一次处理一行内容。处理时,把当前处理的行存储在临时缓冲区中,称为“模式空间”(pattern space ),接着用sed 命令处理缓冲区中的内容,处理完成后,把缓冲区的内容送往屏幕。接着处理下一行,这样不断重复,直到文件末尾。文件内容并没有改变,除非你使用重定向存储输出。Sed 主要用来自动编辑一个或多个文件, 简化对文件的反复操…

    Linux干货 2017-05-01
  • 排错

    把/etc/inittab  模式改为6模式 怎么修复 1 先把 vim /etc/inittab 打开 2 把/etc/inittab 模式改为6 3 reboot 4 在倒计时完之前按任意键 5按A进入 6 在quiet  命令后面写入 3  模式 重启 7把 vim /etc/inittab 打开 8 把/etc…

    Linux干货 2017-05-15
  • CentOS7内核编译

    一.centos7内核编译(支持ntfs文件系统) 1.下载内核源代码内核文件(https://www.kernel.org/) 2.解压缩源代码文件到指定目录 tar xvf linux-4.8.10.tar.xz -C /usr/src 3.创建软链接解压后的文件 cd /usr/src ln -s linux-4.8.10/ linux 4.复制当前系…

    Linux干货 2016-11-28
  • 软链接和硬链接的区别

    Linux链接概念 Linux链接分两种,一种被称为硬链接(Hard Link),另一种被称为符号链接(Symbolic Link)。 硬链接 硬连接指通过索引节点来进行连接。在Linux的文件系统中,保存在磁盘分区中的文件不管是什么类型都给它分配一个编号,称为索引节点号(Inode Index)。在Linux中,多个文件名指向同一索引节点是存在的。一般这种…

    Linux干货 2016-10-29