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

相关推荐

  • yum详解

        yum(全称为 Yellow dog Updater, Modified)yum相对于rpm来说:rpm为基础包管理器,yum则是rpm的前端工具。能够从指定的服务器自动下载RPM包并且安装,可以自动处理依赖性关系,并且一次安装所有依赖的软体包,无须繁琐地一次次下载、安装。,yum无法独立存在,系统不允许有两个…

    Linux干货 2016-08-24
  • 8-5作业

    1、取本机ip地址 ifconfig |grep -E -o  '(([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\.){3}([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])' 2、取各分区利…

    Linux干货 2016-08-08
  • Linux操作系统发展史

    内容摘要:Linux操作系统的诞生,Linux 的发展,Linux的特性决定其迅猛发展,Linux的应用领域与发展前景 关键词:Linux的发展  前景   1.  Linux操作系统的诞生 在1981年到1991年十年间,微软公司的MS-DOS系统一直主宰操作系统的市场,其价格十分昂贵,另一个操作系统UNIX的经销商为了高利润…

    Linux干货 2016-10-14
  • 由Linux中一个小问题引发的思考

    一、一个小问题 1、在学习Linux中我们经常会遇到很多有趣的小问题,今天笔者就遇到了一个很有意思的小问题,现在分享给大家:      “如何在本机字符终端登陆时,除显示原有信息外,再显示当前终端号,时间和主机名?” 2、实现方法如下:      输入vim /etc/…

    2017-07-16
  • Python内置数据结构——集合set

    集合 定义 set翻译为集合 collection翻译为集合类型,是一个较大的概念 set是一个可变的、无序的、不重复的元素组成的集合 set的元素要求必须可以hash,目前已学的不可hash的类型只有list、set 元素不可以索引 set可以迭代 set的初始化 set_1 =set() #表示定义一个空集合set_1 set_1 =set(iterab…

    Linux干货 2017-10-03
  • 循环的特殊用法及函数

    while特殊用法 while read 变量名;do 循环体 done<文件路径(将文件中的每一行依次读入循环体,赋值给变量)   (())可以实现C语言风格的变量操作 for循环特殊格式 for((控制变量初始化;条件判断表达式;控制变量修正表达式)) do 循环体 done 控制变量初始化仅在循环开始时执行一次,进行条件判断成立后执行循…

    Linux干货 2016-08-21

评论列表(1条)

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

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