grep虐我千百遍,我待grep如初恋

N21第四周博客作业

1、  复制/etc/skel目录为/home/tuser1,要求/home/tuser1及其内部文件的属组和其它用户均没有任何访问权限。

[root@Centos6 ~]# cp -r /etc/skel /home/tuser1
[root@Centos6 ~]#chmod –R og=------ /home/tuser1/
[root@Centos6 ~]# ll -d /home/tuser1
drwx------. 3 root root 4096 7月  14 04:16 /home/tuser1

 2、  编辑/etc/group文件,添加组hadoop

[root@Centos6 ~]# echo "hadoop:x:600:">>/etc/group
[root@Centos6 ~]# tail -1 /etc/group
hadoop:x:600:

3、  手动编辑/etc/passwd文件新增一行,添加用户hadoop,其基本组IDhadoop组的id号;其家目录为/home/hadoop

[root@Centos6 ~]# echo "hadoop:x:600:600::/home/hadoop:/bin/bash">>/etc/passwd
[root@Centos6 ~]# tail -1 /etc/passwd
hadoop:x:600:600::/home/hadoop:/bin/bash

4、  复制/etc/skel目录为/home/hadoop,要求修改hadoop目录的属组和其它用户没有任何访问权限。

[root@Centos6 ~]# cp -r /etc/skel /home/hadoop
[root@Centos6 home]# chmod og=------ /home/hadoop
[root@Centos6 home]# ll
drwx------. 3 root root  4096 7月  14 05:53 hadoop

5、  修改/home/hadoop目录及其内部所有文件的属主为hadoop,属组为hadoop

 [root@Centos6 home]# chown -R hadoop:hadoop hadoop
[root@Centos6 home]# ll
drwx------. 3 hadoop hadoop  4096 7月  14 05:53 hadoop

 6、  显示/proc/meminfo文件中以大写或小写S开头的行;用两种方式;

[root@Centos6 home]# grep -i '^s.*' /proc/meminfo
SwapCached:         2712 kB
SwapTotal:       2031608 kB
SwapFree:        2021016 kB
Shmem:                28 kB
Slab:             152116 kB
SReclaimable:      95700 kB
SUnreclaim:        56416 kB
[root@Centos6 home]# grep -i '^[s,S].*' /proc/meminfo
SwapCached:         2712 kB
SwapTotal:       2031608 kB
SwapFree:        2021016 kB
Shmem:                28 kB
Slab:               152128 kB
SReclaimable:        95700 kB
SUnreclaim:          56428 kB

 7、  显示/etc/passwd文件中其默认shell为非/sbin/nologin的用户;

[root@Centos6 ~]# grep -v '/sbin/nologin' /etc/passwd
root:x:0:0:root:/root:/bin/bash
sync:x:5:0:sync:/sbin:/bin/sync
shutdown:x:6:0:shutdown:/sbin:/sbin/shutdown
halt:x:7:0:halt:/sbin:/sbin/halt
jenkins:x:498:498:Jenkins Continuous Integration Server:/var/lib/jenkins:/bin/false
hadoop:x:500:600::/home/hadoop:/bin/bash

 8、  显示/etc/passwd文件中其默认shell/bin/bash的用户;

[root@Centos6 ~]# grep  '/bin/bash' /etc/passwd
root:x:0:0:root:/root:/bin/bash
hadoop:x:500:600::/home/hadoop:/bin/bash

9、  找出/etc/passwd文件中的一位数或两位数;

[root@Centos6 ~]# grep -o '\<[0-9]\{1,2\}\>' /etc/passwd
0
0
1
4
7
5
29
29
74
74
72
72
16

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

[root@Centos6 ~]# grep -E '^[[:space:]]+' /boot/grub/grub.conf
root (hd0,0)
kernel /vmlinuz-2.6.32-279.el6.x86_64………….
initrd /initramfs-2.6.32-279.el6.x86_64.img

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

[root@Centos6 ~]# grep -E '^#+[[:space:]]+[[:graph:]]+' /etc/rc.d/rc.sysinit
# /etc/rc.d/rc.sysinit - run once at boot time
# Taken in part from Miquel van Smoorenburg's bcheckrc.
# Check SELinux status
# Print a text banner.
# Only read this once.
# Initialize hardware
# Set default affinity

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

[root@Centos6 ~]# cls
[root@Centos6 ~]# netstat -tan | grep -E 'LISTEN[[:space:]]+$'
tcp        0      0 0.0.0.0:39750               0.0.0.0:*            LISTEN    
tcp        0      0 0.0.0.0:111                 0.0.0.0:*           LISTEN    
tcp        0      0 0.0.0.0:22                  0.0.0.0:*           LISTEN    
tcp        0      0 127.0.0.1:631               0.0.0.0:*             LISTEN    
tcp        0      0 :::37670                    :::*            LISTEN

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

[root@Centos6 ~]# grep  '^\([[:alpha:]]\+\>\).*\1$' /etc/passwd
sync:x:5:0:sync:/sbin:/bin/sync
shutdown:x:6:0:shutdown:/sbin:/sbin/shutdown
bash:x:541:541::/home/bash:/bin/bash
nologin:x:545:545::/home/nologin:/sbin/nologin

14、显示/proc/meminfo文件中以大写或小写S开头的行;用三种方式;

[root@Centos6 ~]# grep -E "^(s|S).*" /proc/meminfo
[root@Centos6 ~]# grep '[s,S].*' /proc/meminfo
[root@Centos6 ~]# grep -i '^s.*' /proc/meminfo

 

原创文章,作者:N21-沉舟,如若转载,请注明出处:http://www.178linux.com/24239

(0)
N21-沉舟N21-沉舟
上一篇 2016-07-16 22:27
下一篇 2016-07-16 22:28

相关推荐

  • 梦想走向现实的地方

    曾经羡慕打字快的同学指尖能在键盘上优雅地跳舞,于是我有努力练习打字。 曾经羡慕同事能很神奇地把一个交换机的端口关闭,让那端口下面的人都不能上网,于是我努力学习交换机、路由。 现在我羡慕一个人能管很多服务器的人,于是我开始学习linux了。 努力成为一个也能管很多服务器的人,因为我也想别人叫我运维工程师

    Linux干货 2016-10-25
  • 搭建SSH服务器

    Linux 远程登录服务:sshSSH是标准的网络协议,可用于大多数UNIX操作系统,能够实现字符界面的远程登录管理,它默认使用22号端口,采用密文的形式在网络中传输数据,相对于通过明文传输的Telnet,具有更高的安全性。SSH提供了口令和密钥两种用户验证方式,这两者都是通过密文传输数据的。不同的是,口令用户验证方式传输的是用户的账户名和密码,这要求输入的…

    Linux干货 2017-07-24
  • 加密解密基础、PKI以及自建私有CA

    加密解密基础、PKI以及自建私有CA 加密是以某种特殊的算法改变原有的信息数据,使得未授权的用户即使获得了已加密的信息,但因不知解密的方法,仍然无法了解信息的内容。 解密就是加密的逆向操作,将加密过的不可读的数据经过处理,能够是之前不可读的信息还原成可读信息。 PKI是Public Key Infrastructure的首字母缩写,翻译过来就是公钥基础设施;…

    Linux干货 2016-12-07
  • for,while,until简介

    Shell(以Bash为例)中的循环语句一般有for、while、until这几种,偶尔还有写错语法的时候,这里结合实例来自己总结一下。也为今后使用提供一个快捷的资料获取渠道。 一、for循环语句 实例1.1 最基本的for循环: (传统的形式,for var in …) 代码如下: #!/bin/bashfor x in one two three fou…

    Linux干货 2016-08-22
  • 正则表达式

    正则表达式是一种以一些字符赋予特殊意义之后,用来表达字符串,用以筛选各种形式的字符串用来进行查找、替换、删除等各种文本编辑作用的一种表示方式。 正则表达式的特殊字符 字符表示 .   可以表示任意可打印字符 [] 中括号范围内任意单个字符 [^] 中括号范围外任意单个字符 (相对所有可打印字符) [:space:] 表示任意单个空白字符 [:dig…

    2017-08-03
  • echo address

    echo address

    Linux干货 2016-08-08

评论列表(1条)

  • 马哥教育
    马哥教育 2016-07-17 20:15

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