N33-Week 3-向日葵

1、列出当前系统上所有已经登录的用户的用户名,注意:同一个用户登录多次,则只显示一次即可
~]# who | sort -u

  • who:查看当前已经登陆的所有用户的详细信息
  • sort -u :在输出行中去除重复行
    N33-Week 3-向日葵

2、取出最后登录到当前系统的用户的相关信息
~]# who | tail -1
N33-Week 3-向日葵

3、取出当前系统上被用户当做其默认shell的最多的那个shell
~]# cat /etc/passwd | cut -d: -f7 | uniq -c | sort -n | tail -1

  • cut -d: -f7:指明分隔符取shell字段值
  • uniq -c:显示重复次数
  • sort -n:以数值大小排序
  • tail -1:获取最后一行
    N33-Week 3-向日葵

4、将/etc/passwd中的第三个字段数值最大的后10个用户的信息全部改为大写后保存至/tmp/maxusers.txt文件中
~]# cat /etc/passwd |sort -t : -k 3 -n /etc/passwd |tail -n 10 | tr [a-z] [A-Z] >> /tmp/maxusers.txt

  • sort -t :字段分隔符
  • sort -k 3:取第三个字段为标准排序
  • tr [a-z] [A-Z]:将文件中的小写转换为大小
  • ">>":追加重定向,新内容会追加至目标文件尾部

N33-Week 3-向日葵

5、取出当前主机的IP地址,提示:对ifconfig命令的结果进行切分 ~]# ifconfig |grep -A 3 "^e[tn]" |grep -o -i " inet .$" | grep -o "[0-9].$"| cut -d' ' -f1

  • grep -A 3 "^e[tn]":匹配到后3行,显示以e开头有t和n字母的信息
  • grep -o :仅显示匹配到的字符串
  • grep -i:忽略字符大小写
  • " inet .$" :. inet后匹配任意字符 $:行尾锚定
  • cut -d' ' -f1:截取分隔字符第一列

6、列出/etc目录下所有以.conf结尾的文件的文件名,并将其名字转换为大写后保存至/tmp/etc.conf文件中
~]# ls -a /etc/*.conf | tr 'a-z' 'A-Z' >> /tmp/etc.conf
N33-Week 3-向日葵

7、显示/var目录下一级子目录或文件的总个数
~]# ls -a /var | wc -l

  • wc -l:lines统计行数
    N33-Week 3-向日葵

8、取出/etc/group文件中第三个字段数值最小的10个组的名字
~]# sort -t: -k3 -n /etc/group | head -n 10

  • head -n 10:显示文件前十行数据
    N33-Week 3-向日葵

9、将/etc/fstab和/etc/issue文件的内容合并为同一个内容后保存至/tmp/etc.test文件中
~]# cat /etc/fstab /etc/issue &>/tmp/etc.test

  • &>:覆盖重定向
    N33-Week 3-向日葵
    10、请总结描述用户和组管理类命令的使用方法并完成以下练习
  • (1)创建组distro,其GID号为2016
    • ~]# groupadd -g 2016 distro
      N33-Week 3-向日葵
  • (2)创建用户andriva,其ID号为1005;基本组为distro
    • ~]# useradd -u 1005 -g distro andriva
      N33-Week 3-向日葵
  • (3)创建用户mageia,其ID号为1100,家目录为/home/linux
    • ~]# useradd -u 1100 -d /home/linux mageia
      N33-Week 3-向日葵
  • (4)给用户mageia添加密码,密码为mageedu
    • ~]# echo 'mageedu' | passwd --studin mageia
      N33-Week 3-向日葵
  • (5)删除andriva,但保留其家目录
    • ~]# userdel andriva
      N33-Week 3-向日葵
  • (6)创建用户slackte,其ID号为2002,基本组为distro,附加组peguin
    • ~]# useradd -u 2002 -g distro -G peguin slackte
    • useradd -g:指定基本组ID,而且此组要事先存在,否则会报错
    • useradd -G:指明用户所属的附加组
      N33-Week 3-向日葵
  • (7)修改slackte的默认shell为/bin/tcsh
    • ~]# chmod -s /bin/tcsh slackware
      *useradd -s:指明用户的默认SHELL,而可用的所有shell存储在/etc/shells文件中
      N33-Week 3-向日葵
  • (8)为用户slackte新增附加组admins
    • ~]# usermod -G admins slackware
      N33-Week 3-向日葵

猜你喜欢

转载自blog.51cto.com/13936334/2307171