N26-第五周博客作业

一、显示当前系统上rootfedorauser1用户的默认shell

[root@promote home]# grep -E ‘^(root|fedora|user1)’ /etc/passwd |
cut -d : -f7

/bin/bash

/bin/bash

/bin/bash

[root@promote home]#

注:仅egrep支持(a|b)这种模式

 

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

[root@VM_221_40_centos ~]# grep -o
“\<[_[:alpha:]]\+\>(.*)” /etc/rc.d/init.d/functions

checkpid()

__pids_var_run()

__pids_pidof()

daemon()

killproc()

if($1!~/^[0-9.]+[smhd]?$/) exit 1;d=$1~/s$|^[0-9.]*$/?1:$1~/m$/?60:$1~/h$/?60*60:$1~/d$/?24*60*60:-1;if(d==-1)
exit 1;delay+=d*$1} END {printf(“%d”,delay+0.5)}’)

pidfileofproc()

pidofproc()

status()

echo_success()

echo_failure()

echo_passed()

echo_warning()

update_boot_stage()

success()

failure()

passed()

warning()

action()

strstr()

is_ignored_file()

is_true()

is_false()

apply_sysctl()

[root@VM_221_40_centos ~]#

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

[root@VM_221_40_centos
init.d]# echo $PWD | grep -o “[^/]\+$”

init.d

[root@VM_221_40_centos
init.d]#

 

 

 扩展:取出其路径名

[root@VM_221_40_centos init.d]# echo $PWD | grep -o
“^/.*/”

/etc/rc.d/

[root@VM_221_40_centos init.d]#

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

[root@VM_221_40_centos init.d]# ifconfig | grep -E -o
“\<([1-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])\>”

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

grep -E
“\<([1-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])\.(\<([0-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])\.){2}([0-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])”
/tmp/ip

 

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

邮箱地址中用户名可以是数字、字母(分大小写)、下划线。

grep -Eo “\<[a-z,A-Z,0-9,_-]+@[A-Z,a-z,0-9,-]+\.[A-Z,a-z,0-9]{2,}\>”
/tmp/mail

或者

grep -o
“\<[a-z,A-Z,0-9,_]\+@[A-Z,a-z,0-9,-]\+\.[A-Z,a-z,0-9]\{2,\}\>”
/tmp/mail

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

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

 24631    4 drwxrwxr-x   2 root     mail         4096 May 15 00:22
/var/spool/mail

[root@VM_221_40_centos ~]#

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

[root@VM_221_40_centos ~]# find /home -nouser -a -nogroup -ls | more

278530    4 drwx——   3 1000     1000         4096 May 15 00:23
/home/gentoo

278534    4 -rw——-   1 1000     1000          126 May 15 02:02
/home/gentoo/.bash_hi

story

278535    4 drwxrwxr-x   2 1000     1000         4096 May 15 00:23
/home/gentoo/gen

278531    4 -rw-r–r–   1 1000     1000          231 Aug  3  2016
/home/gentoo/.bashrc

278532    4 -rw-r–r–   1 1000     1000           18 Aug  3  2016
/home/gentoo/.bash_lo

gout

278533    4 -rw-r–r–   1 1000     1000          193 Aug  3  2016
/home/gentoo/.bash_pr

ofile

[root@VM_221_40_centos ~]#

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

[root@VM_221_40_centos ~]# find /home
-nouser -a -nogroup -a -ctime -3 -ls | more

278530    4 drwx——   3 1000     1000         4096 May 15 00:23 /home/gentoo

278534    4 -rw——-   1 1000     1000          126 May 15 02:02
/home/gentoo/.bash_hi

story

278535    4 drwxrwxr-x   2 1000     1000         4096 May 15 00:23 /home/gentoo/gen

278531    4 -rw-r–r–   1 1000     1000          231 Aug  3  2016
/home/gentoo/.bashrc

278532    4 -rw-r–r–   1 1000     1000           18 Aug  3  2016
/home/gentoo/.bash_lo

gout

278533    4 -rw-r–r–   1 1000     1000          193 Aug  3  2016
/home/gentoo/.bash_pr

ofile

[root@VM_221_40_centos ~]#

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

[root@VM_221_40_centos ~]# find ./ -perm -222 –ls

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

[root@VM_221_40_centos
~]# find /etc -size +1M -type f –ls

 

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

(0)
lixinkuanlixinkuan
上一篇 2017-05-15
下一篇 2017-05-15

相关推荐

  • 初学正则表达式

      前言:     在学正则表达式之前,有小伙伴讲解说,正则表达式在文本处理上功能非常强大、使用非常普遍,并且现在很多的工具软件都支持它,以后的学习工作中会经常使用,非常灵活,但是灵活的同时又是繁琐,需要小心翼翼的仔细推敲。抱着认真、好奇的心思听完了王老的课。我自己理解的正则表达式是,给一些符号赋予一定的涵义…

    Linux干货 2016-08-12
  • 马哥教育网络班20期+第六周课程练习

    请详细总结vim编辑器的使用并完成以下练习题 1、复制/etc/rc.d/rc.sysinit文件至/tmp目录,将/tmp/rc.sysinit文件中的以至少一个空白字符开头的行的行首加#;     cp /etc/rc.d/rc.sysinit  /tmp   &n…

    Linux干货 2016-10-19
  • 破解root口令

    这里主要介绍一下centos6和7root密码的破解方法 这里先说一下centos7的口令破解方法 破解CentOS7的root口令方法一 启动时任意键暂停启动  按e键进入编辑模式  将光标移动linux16开始的行,添加内核参数rd.break 按ctrl-x启动 这是进来之后的界面 然后查看用户的登录信息 echo $UID 显示结…

    2017-07-14
  • lvm 逻辑卷管理

    标签:LVM 创建 扩容 缩减 一、LVM  LVM是 Logical Volume Manager(逻辑卷管理)的简写,它由Heinz Mauelshagen在Linux 2.4内核上实现。LVM将一个或多个硬盘的分区在逻辑上集合,相当于一个大硬盘来使用,当硬盘的空间不够使用的时候,可以继续将其它的硬盘的分区加入其中,这样可以实现磁盘空间的动态管…

    Linux干货 2015-05-18
  • 根DNS域名解析的实现

    一、实现从根,com,rj.com 模拟互联网的DNS架构 DNS(Domain Name System,域名系统),因特网上作为域名和IP地址相互映射的一个分布式数据库,能够使用户更方便的访问互联网,而不用去记住能够被机器直接读取的IP数串。 接下来就一起开始搭建吧 首先,我们需要计划好实验环境,包括实验的步骤思路 1)实验环境(最好是画图展示,能使思路清…

    2015-02-10
  • N22-第四周作业

    1、复制/etc/skel目录为/home/tuser1,要求/home/tuser1及其内部文件的属组和其它用户均没有任何访问权限。 [root@localhost ~]# cp -r /etc/skel /home/tuser1    (复制/etc/skel为/home/tuser1) [root@localho…

    Linux干货 2016-09-05

评论列表(1条)

  • luoweiro
    luoweiro 2017-06-26 23:05

    进度要跟上了,加油。