Linux文本管理及grep内容过滤实战

马哥教育网络班21期-第四周课程练习

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

[root@localhost ~]# cp -R /etc/skel /home/tuser1
[root@localhost ~]# chmod -R go= /home/tuser1/

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

[root@localhost ~]# echo "hadoop:x:3223:" >> /etc/group

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

[root@localhost ~]# echo "hadoop:x:3223:3223::/home/hadoop:/sbin/nologin" >> /etc/passwd

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

[root@localhost ~]# cp -R /etc/skel /home/hadoop ; chmod go= /home/hadoop

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

[root@localhost ~]# chown -R hadoop:hadoop /home/hadoop

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

a. [root@localhost ~]# grep -i "^s" /proc/meminfo
b. [root@localhost ~]# grep "^[sS]" /proc/meminfo

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

[root@localhost ~]# grep -v "/sbin/nologin$" /etc/passwd | cut -d: -f1

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

[root@localhost ~]# grep "/bin/bash$" /etc/passwd | cut -d: -f1

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

[root@localhost ~]# grep "\<[0-9]\{1,2\}\>" /etc/passwd

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

[root@localhost ~]# grep "^[[:space:]]\{1,\}" /boot/grub/grub.conf

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

[root@localhost ~]# grep "^#[[:space:]]\{1,\}[^[:space:]]\{1,\}" /etc/rc.d/rc.sysinit

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

[root@localhost ~]# netstat -tan | egrep "LISTEN|[[:space:]]$"

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

[root@localhost ~]# for i in bash testbash basher;do useradd $i ;done
[root@localhost ~]# useradd -s /sbin/nologin nologin
[root@localhost ~]# cut -d: -f1,7 /etc/passwd | grep "\(\<[[:alnum:]]\{1,\}\):.*\1$" | cut -d: -f1

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

a. [root@localhost ~]# grep -i "^s" /proc/meminfo
b. [root@localhost ~]# grep "^[sS]" /proc/meminfo
c. [root@localhost ~]# egrep "^(s|S)" /proc/meminfo

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

[root@localhost ~]# grep -v "/sbin/nologin$" /etc/passwd | cut -d: -f1

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

[root@localhost ~]# grep "/bin/bash$" /etc/passwd

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

[root@localhost ~]# grep "\<[[:digit:]]\{1,2\}\>" /etc/passwd

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

(0)
Net21_木头Net21_木头
上一篇 2016-07-29 15:23
下一篇 2016-07-29 15:23

相关推荐

  • Linux之SELinux

      Linux之SELinux     本文包括以下内容SELinux概念启用SELinux管理文件安全标签管理端口标签管理SELinux布尔值开关管理日志查看SELinux帮助   SELinux介绍SELinux: Secure Enhanced Linux,是美国国家安全局(NSA=The National Se…

    Linux干货 2016-09-21
  • 【26期】Linux第六周学习小总结

        时光匆匆,一周时光悠然而逝,带给我们的只有知识的充实,和每日强大的自信心,学习的日益深入,慢慢的然我们的思绪和状态带回高中时光,吃饭上课睡觉三点一线的生活,枯燥中透露出稍微的晨曦,让每个明天都充满着期待,那我们的本周的学习中磁盘管理算是占了很大的比重,毕竟关于磁盘的知识很是难理解,那我就把本周的知识回顾温习,同时分享给大家。 &n…

    2017-08-19
  • httpd2.4 应用

    练习:  (1)基于主机名实现三个虚拟主机     (2) 每虚拟主机使用独立的访问日志和错误日志 (3) 第三个虚拟主机的/admin要进行用户访问认证  (4) 在第二个虚拟主机上提供/status; (5) 在第三个虚拟主机提供路径别名/bbs,访问其它文件系统路径; (6) 尝试使用混合类型…

    Linux干货 2016-10-09
  • N22-第九周作业

    1、写一个脚本,判断当前系统上所有用户的shell是否为可登录shell(即用户的shell不是/sbin/nologin);分别这两类用户的个数;通过字符串比较来实现; #!/bin/bash # declare -i log_user declare -i notlog_user while read&n…

    Linux干货 2016-10-24
  • 配置yum源

    配置yum源

    2018-04-23
  • SElinux简介

    本文主要介绍:SELinux概念、配置SELinux、管理文件安全标签、管理端口标签、管理SELinux布尔值开关、管理日志、查看SELinux帮助以及SElinux操作示例(迁移httpd服务默认目录)

    2018-05-17

评论列表(1条)

  • 马哥教育
    马哥教育 2016-07-29 16:05

    写的很好,排版也很棒,加油