马哥教育网络班22期+第4周课程练习 忍者乱太郎喻成

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

  cp -rp /etc/skel /home/tuser1
  chmod -R 700 /home/tuser1

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

  groupadd hadoop

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

hadoop:x:3004:2021:userforblog:/home/hadoop:bin/bash

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

cp -rp /etc/skel /home/hadoop && chmod -R 700 /home/hadoop

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

 chown -R hadoop:hadoop /home/hadoop

6、显示/proc/meminfo文件中以大写或小写S开头的行;用两种方式
   假设大写S开头,小写s开头相同
   方法1:

cat /proc/meminfo | grep ^S

   方法2:

awk "/^S/{print}" /proc/meminfo

   方法3 

sed -n  '/^S/p' /proc/meminfo

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

awk -F':' '$7 ~ /\/sbin\/nologin/ {print $1} ' /etc/passwd

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

awk -F':' '$7 ~ /\/bin\/bash/ {print $1} ' /etc/passwd

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

cat /etc/passwd | grep -o "[0-9][0-9]"

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

cat /boot/grub/grub.conf | grep "^ "

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

cat /etc/rc.d/rc.sysinit| grep "\# "

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

netstat -tan| grep 'LISTEN[[:space:]]\+$'

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

    useradd bash
    useradd testbash
    useradd basher
    useradd nologin -s /sbin/nologin
    awk -F':' '$7 ~ $1 {print} ' /etc/passwd

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

评论列表(1条)

  • luoweiro
    luoweiro 2016-10-11 23:14

    awk用的很溜,当然非常赞同一题多解的习惯,加油。