week5

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

useradd fedora
useradd user1
egrep "^(root|fedora|user1)" /etc/passwd | cut -d: -f1,7

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

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

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

echo /etc/sysconfig/ | grep  -E  -o  "[^/]+/?$" | grep -o sysconfig
dirname /etc/sysconfig/
echo "/etc/rc.d/init.d/functions" |grep -E -o "/*.*/"
echo "/etc/rc.d/init.d/functions" |grep -E -o "^\/.*\/"

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

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

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

ifconfig | egrep -o '\<([1-9]|[1-9][0-9]|1[0-9]{2}|2[01][0-9]|22[0-3])\>(\.\<([0-9]|[0-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\>){2}\.\<([1-9]|[0-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-4])\>'

6、挑战题:写一个模式,能匹配出所有的邮件地址;感觉看看就I好了;

/^[a-z]([a-z0-9]*[-_]?[a-z0-9]+)*@([a-z0-9]*[-_]?[a-z0-9]+)+[\.][a-z]{2,3}([\.][a-z]{2})?$/i
http://c.biancheng.net/cpp/html/1432.html

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

find /var -user root -a -group mail -ls

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

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

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

find /etc/ -perm -222 -type f -ls

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

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

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

find /etc/init.d/ -perm -113 -ls -type f

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

find /usr/ -not -user root -a -not -user bin -a -not -user hadoop

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

find /etc/ -perm /222 -type f -ls

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

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

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

(0)
N24_小呆N24_小呆
上一篇 2016-11-24 17:07
下一篇 2016-11-24 20:23

相关推荐

  • 优云automation实践技巧:简单4步完成自动化构建发布

    前言:本文介绍了优云是如何将运维自动化产品应用到日常工作实践中,并通过内部用户的大量使用来不断改进产品的用户体验。 各位看官,这不是一个揭发单身有为青年因同事们天天秀恩爱而受到一万点暴击伤害的故事。这里指的狗粮,不是真正的“狗粮”——当然,也不是你们认为的狗粮。 事实上,现在很多涉足产品开发的互联网公司,都会提到“吃狗粮”这一概念(出自“Eating you…

    系统运维 2017-01-09
  • shell编程之条件判断和find查询

    使用read 来把输入值分配给一个或多个shell 变量: -p 指定要显示的提示 -t TIMEOUT read 从标准输入中读取值,给每个单词分配一个变量 所有剩余单词都被分配给最后一个变量 read -p “Enter a filename: “ FILE   条件选择if语句  多分支 if  CONDITION1 ; …

    Linux干货 2016-08-18
  • 对inode的初步理解

    1.什么是inode?     inode中文译作”索引节点“,是linux操作系统中的一种数据结构,用来存储文件的元数据信息。在linux系统中每个文件都会分配一个inode,我们也可以把inode看作指针,它永远指向文件的具体存储位置。 2.inode中包含了什么信息? * inode 编号 * 用来识别文件类型,以及用于 …

    2017-07-18
  • RPM与YUM命令异同详解

    RPM和YUM都是用来安装程序的工具,但是它们有太多相似的用法以至于有事很难分清应该哪个那就来一起详细的了解一下他们的功能及用法,以及他们的相同以及不同之处。 RPM 软件包管理器功能:安装,卸载,升级,查询,校验,打包,数据库管理RPM在安装时不能处理程序之间复杂的依赖关系RPM可以验证软件包来源的合法性、完整性。常用选项: -i:表示安装。(常用:-iv…

    2017-06-18
  • DNS实验

    本实验需的注意问题:      1、运营商的服务器需要更改根指向服务器地址      2、根服务器上的配置文件/etc/named.conf需要将"."根区域禁用;      3、更改区域数据库文件的属组为named;c…

    Linux干货 2016-12-12
  • 文本处理工具之awk

                    文本处理工具之AWK 一、linux文本处理工具三剑客:grep 、sed、 awk。其中grep是一种文本过滤器,sed是文本行编辑器,而awk是一种报表生成器,就是对文件进行…

    2017-05-21

评论列表(1条)

  • luoweiro
    luoweiro 2016-11-30 22:22

    第3题的本意是要要用grep实现,主要练习grep的。