Linux基础知识(四)-正则表达式grep,egrep

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

[root@localhost ~]# cp -r /etc/skel /home/tuser1
drwxr-xr-x. 2 root root 59 Oct  8 17:53 /home/tuser1/
[root@localhost ~]# chmod -R 700 /home/tuser1
[root@localhost ~]# ll -d /home/tuser1/
drwx------. 2 root root 59 Oct  8 17:53 /home/tuser1/
[root@localhost ~]# chmod  go=  /home/tuser1
[root@localhost ~]# ll -d /home/tuser1/
drwx------. 2 root root 59 Oct  8 17:53 /home/tuser1/

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

可以使用vim进行编辑,添加一行 hadoop:x:3005:
或者使用>>追加的方式

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

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

可以使用vim编辑器编辑:

或者使用>>追加

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

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

[root@localhost ~]# cp -r /etc/skel /home/hadoop
[root@localhost ~]# ls -a /home/hadoop
.  ..  .bash_logout  .bash_profile  .bashrc
[root@localhost ~]# chmod -R 700 /home/hadoop

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

[root@localhost ~]# chown -R hadoop:hadoop /home/hadoop
[root@localhost ~]# ls -ld /home/hadoop
drwx------. 2 hadoop hadoop 59 Oct  8 18:22 /home/hadoop

从题3到题5的过程结束后,在给hadoop账户一个密码,hadoop账户
就可以登录了,是一个手动添加账户的过程

[root@localhost ~]# echo "111111" | passwd --stdin hadoop

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

[root@localhost ~]# grep -E "^[s|S]" /proc/meminfo
SwapCached:            0 kB
SwapTotal:       2097148 kB
SwapFree:        2097148 kB
Shmem:              7016 kB
Slab:              70112 kB
SReclaimable:      27504 kB
SUnreclaim:        42608 kB
###或者###
[root@localhost ~]# grep -E "^[s|S]" /proc/meminfo
SwapCached:            0 kB
SwapTotal:       2097148 kB
SwapFree:        2097148 kB
Shmem:              7016 kB
Slab:              70112 kB
SReclaimable:      27504 kB
SUnreclaim:        42608 kB

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

[root@localhost ~]# grep -v  "/sbin/nologin" /etc/passwd
##只显示用户名##
[root@localhost ~]# grep -v  "/sbin/nologin" /etc/passwd | cut -d: -f1

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

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

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

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

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

[root@localhost ~]# grep -E "^[[:space:]]+" /boot/grub/grub.conf
 ##或者##
[root@localhost ~]# grep -E "^[[:space:]]{1,}" /boot/grub/grub.conf

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

[root@localhost ~]# grep -E "^#[[:space:]]+[^[:space:]]+" /etc/rc.d/rc.sysinit

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

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

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

[root@localhost ~]# useradd bash
[root@localhost ~]# useradd testbash
[root@localhost ~]# useradd basher
[root@localhost ~]# useradd -s /sbin/nologin nologin
[root@localhost ~]# egrep "^([^:]+).*\1$" /etc/passwd
sync:x:5:0:sync:/sbin:/bin/sync
shutdown:x:6:0:shutdown:/sbin:/sbin/shutdown
halt:x:7:0:halt:/sbin:/sbin/halt
nobody:x:99:99:Nobody:/:/sbin/nologin
hadoop:x:3005:3005::/home/hadoop:/bin/bash
bash:x:3006:3006::/home/bash:/bin/bash
basher:x:3008:3008::/home/basher:/bin/bash
nologin:x:3009:3009::/home/nologin:/sbin/nologin

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

(0)
luoluoluoluo
上一篇 2016-10-17
下一篇 2016-10-17

相关推荐

  • 文件权限

    一、文件权限        linux系统中文件众多,针对不同的文件面向的对象不同,因此对其设置的权限各不相同,那么我们来对文件设置权限呢?               …

    Linux干货 2016-08-08
  • 回溯法 -数据结构与算法

    1.回溯法算法思想: 定义:         回溯法(探索与回溯法)是一种选优搜索法,按选优条件向前搜索,以达到目标。但当探索到某一步时,发现原先选择并不优或达不到目标,就退回一步重新选择,这种走不通就退回再走的技术为回溯法,而满足回溯条件的某个状态的点称为“回溯点”。 1、回溯法适用:有许多问题,当需要找出它的解集(…

    Linux干货 2015-04-07
  • ​Linux 硬连接与软连接的区别

        Linux 硬连接与软连接的区别                        &…

    Linux干货 2016-10-25
  • 我的linux学习方法

    目前记住Linux单词命令过于困难,现在主要记住linux的命令的作用及用处,不记得单词可以百度查找做多了自然就记住了。

    Linux干货 2018-03-17
  • 进程工具总结

    一、top命令         top命令是Linux下常用的性能分析工具,能够实时显示系统中各个进程的资源占用状况,类似于Windows的任务管理器。top是一个动态显示过程,即可以通过用户按键来不断刷新当前状态.如果在前台执行该命令,它将独占前台,直到用户终止该程序为止.比较准确的说,top命令提供了实时的对系统处…

    Linux干货 2016-09-12
  • 马哥教育网络班22期+第1周课程练习

    1.描述计算机的组成及其功能。    组成:CPU (运算器+控制器),存诸器(内存与硬盘),输入设备,输出设备。    运算器:对数据进行加工处理的部件(包括算述运算与逻辑运算)。    控制器:负责从存储器取出指令,按指令的要求发出控制信号,使各部件协调的,一步步的完成各种操作。   …

    Linux干货 2016-08-22

评论列表(1条)

  • 马哥教育
    马哥教育 2016-10-20 19:35

    很棒,看的出来真的是在很用心的完成作业,继续保持。