N25-第5周博客作业

N25-第5周博客作业

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

grep -E "^[[:space:]]+[[:alnum:]]+" /boot/grub/grub.conf   
grep "^[[:space:]]\+.*" /boot/grub/grub.conf

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

grep -E "^#[[:space:]]+[^[:space:]]+" /etc/rc.d/rc.sysinit 
grep "^#[[:space:]]\+[^[:space:]]" /etc/rc.d/rc.sysinit

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

netstat -tan | grep -E "LISTEN[[:space:]]*$"
netstat -tan | grep "LISTEN[[:space:]]*$"

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

添加用户什么的略。。。 

grep "^\([a-z]\+\b\).*\1$" /etc/passwd

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

grep -E "^(root|fedora|user1)\>" /etc/passwd | cut -d: -f1,7
grep -E "^(root|fedora|user1)\b.*" /etc/passwd | cut -d: -f1,7

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

grep -E "[[:alpha:]]+\>\(\)" /etc/rc.d/init.d/functions 
grep "[[:alnum:]]\+()" /etc/rc.d/init.d/functions

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

    扩展:取出其路径名

echo "/usr/local/nginx/sbin/" | grep -E -o "[[:alnum:]]+/?$" | grep -o "[[:alnum:]]*" 
echo "/usr/local/nginx/sbin/" | grep -E -o "[/[:alnum:]]+\>" | grep -E -o "^/[/[:alnum:]]+/"

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

ifconfig | grep -E -o "\<[1-9]\>|\<[1-9][0-9]\>|\<1[0-9][0-9]\>|\<2[0-4][0-9]\>|\<25[0-5]\>"
ifconfig | grep  -E -o "\b(25[0-5]|2[0-4][0-9]|1[0-9]{2}|[1-9]{1,2})\b"

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

ifconfig | grep -E -o "\<((1?[0-9][0-9]?|2[0-4][0-9]|25[0-4])\.){3}(1?[0-9][0-9]?|2[0-4][0-9]|25[0-4])\>"

 

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

grep -E -o "\<[^[:space:]]*\>@\<[^[:space:]]*\>\.\<[^[:space:]]*\>" mailstest.text 
grep -E -o "\b[^[:space:]]+\@[^[:space:]]+\b" mailstest.text

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

find /var -user root -group mail -ls

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

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

find / \( -nouser -o -nogroup \) 
find / \( -nouser -o -nogroup \) -a -atime -3

 

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

find /etc  -perm -222 -ls

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

find /etc -size +1M -type f -exec ls -lh {} \;

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

find /etc/init.d/ -perm -113
find /etc/init.d/ -perm -113 -exec ls -lh {} \;

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

find /usr/ -not \( -user root -o -user bin -o  -user hadoop \)

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

find /etc/ -not -perm  -222

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

find /etc -mtime -7 -not \( -user root -o -user hadoop \) -ls

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

(0)
oranixoranix
上一篇 2016-12-30
下一篇 2016-12-31

相关推荐

  • gawk基础及进阶

    GUN awk: 文本处理三工具:grep,sed,awd grep,egrep,fgrep:文本过滤工具:pattern sed:行编辑器 模式空间、保持空间 awk:报告生成器,格式化文本输出; AWK:Aho,Weinberger,Kernighan –> New AWK,NAWK GNU awk,gawk gawk – …

    Linux干货 2017-05-22
  • sed 相关概念总结

    文件查看命令:cat, tac,rev cat [OPTION]… [FILE]… -E: 显示行结束符$ -n: 对显示出的每一行进行编号 -A:显示所有控制符 -b:非空行编号 -s:压缩连续的空行成一行 [root@CentOS7 ~]# cat yyy [root@CentOS7 ~]# cat -A yyy $ tac: 把…

    Linux干货 2016-08-12
  • 11文件查找find和locate

    有些时候我们是想要在系统中查找某个具体的文件,却不知道路径在哪里,只是知道其中的某些特性,比如大小或者名字什么的。这时候就要用到查找工具啦。 在文件系统上查找符合条件的文件命令有两个,locate和find,其中locate是非实时查找即数据库查找。而find是实时查找 locate: 用法:locate [OPTION]… [PATTERN]&…

    Linux干货 2016-11-27
  • clsass 10 shell编程(二)及文件查找及压缩

    一、选择执行(条件判断if) 流程控制 过程式编程语言:     顺序执行     选择执行     循环执行 使用read 命令来接受输入 使用read 来把输入值分配给一个或多个shell变量:   &nb…

    Linux干货 2016-08-18
  • linux计划任务

    任务计划的分类: 一次性的任务计划:只执行一次 周期性的任务计划:每隔一定的周期去做相同的事情 设置任务计划功能的工具:at和crontab at:专门处理一次性的计划任务 crontab:根据定义的周期信息,循环做一些事情 batch:系统自行选择空闲时间去执行此处指定的任务 At命令: 查看atd状态和启动atd服务及其配置文件路径: centos6:s…

    2017-09-09
  • VMware vSphere所需要开放的端口

        80 vCenter Server需要端口80用于直接HTTP连接。端口80会将请求重定向到HTTPS端口443。如果意外使用了http://server而不是https://server,此端口将非常有用。     389 此端口在vCenter Server的本地和所…

    Linux干货 2016-07-07

评论列表(1条)

  • 马哥教育
    马哥教育 2017-02-17 10:29

    写的很好,排版也很漂亮,继续加油