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学习 Grep详则。

    grep 功能说明:查找文件里符合条件的字符串。 语  法:grep [-abcEFGhHilLnqrsvVwxy][-A<显示列数>][-B<显示列数>][-C<显示列数>][-d<进行动作>][-e<范本样式>][-f<范本文件>][–help][范本样式][文件或目录&…

    Linux干货 2017-07-24
  • 软件管理

    rpm:操作复杂、编译时间长、极易出现问题、依赖关系复杂、管理方便、 保存依赖关系,需要手工解决。
    yum:自动解决依赖关系、可以对rpm进行分组,基于组进行安装操作、引入仓库概念,支持多个仓库、配置简单

    2018-03-21
  • sed的用法小结

    sed的用法小结 sed主要用来自动编辑一个或多个文件;简化对文件的反复操作;编写转换程序等sed [OPTION]… ‘script’ [input-file] … OPTION: -n 不输出模式空间中的内容至屏幕,仅显示script处理后的结果 -e 多点编辑,eg: ~]# sed -e ‘s@^#[[…

    Linux干货 2017-08-22
  • 密码保护:第一天

    无法提供摘要。这是一篇受保护的文章。

    Linux干货 2017-07-15
  • 测试

    3、查询file.txt以abc结尾的行grep "abc$" file.txt4、删除file.txt文件中的空行grep -v '^$' file.txt > file.txtsed '/^$/d' file.txt > file.txt(覆盖重定向文件变为空该文件为空,但是追加时正常成功。…

    Linux干货 2016-06-12
  • rsyslog学习

    一、rsyslog日志服务简介 二、rsyslog的配置详解 三、实现日志服务器收集日志及last、lastb、dmseg命令的使用 四、实现日志存储在mysql中 一、rsyslog日志服务简介 日志的概念好理解,日志作用可用于排障和追溯审计的等 1、rsyslog是一个C/S架构的服务,可监听于某套接字,帮其它主机记录日志信息,在linux系统中可以分类…

    Linux干货 2016-10-24

评论列表(1条)

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

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