1. 列出当前系统上所有已经登录的用户的用户名, 注意: 同一个用户登录多次, 则只显示一次即可
- [root@node1 ~]# who
- root tty1 2018-06-08 12:24
- root pts/0 2018-06-08 10:58 (192.168.6.88)
- [root@node1 ~]# who | cut -d' ' -f1 | uniq
- or [root@node1 ~]# who | cut -d' ' -f1 | sort -u
- root
2. 取出最后登录到当前系统的用户的相关信息
[root@node1 ~]# last | head -1
root pts/1 192.168.6.88 Fri Jun 8 12:40 still logged in
3. 取出当前系统上被用户当作其默认 shell 的最多的那个 shell
- [root@node1 ~]# cut -d: -f7 /etc/passwd | sort | uniq -c | sort -n | tail -1 | cut -d' ' -f7
- /bin/bash
4. 将 / etc/passwd 中的第三个字段数值最大的后 10 个用户的信息全部改为大写后保存至 / tmp/maxusers.txt 文件中
- [root@node1 ~]# sort -n -t: -k3 /etc/passwd | tail | tr 'a-z' 'A-Z'> /tmp/maxusers.txt
- [root@node1 ~]# cat /tmp/maxusers.txt
- BASH:X:4008:4008::/HOME/BASH:/BIN/BASH
- BASHER:X:4009:4009::/HOME/BASHER:/BIN/BASH
- TESTBASH:X:4010:4010::/HOME/TESTBASH:/BIN/BASH
- NOLOGIN:X:4011:4011::/HOME/NOLOGIN:/SBIN/NOLOGIN
- USER5:X:4012:4012::/HOME/USER5:/BIN/BASH
- USER6:X:4013:4013::/HOME/USER6:/BIN/BASH
- USER7:X:4014:4014::/HOME/USER7:/BIN/BASH
- HADOOP:X:4015:4015::/HOME/HADOOP:/BIN/BASH
- FEDORA:X:4016:4016::/HOME/FEDORA:/BIN/BASH
- CENTOS:X:4017:4017::/HOME/CENTOS:/BIN/BASH
5. 取出当前主机的 IP 地址, 提示: 对 ifconfig 命令的结果进行切分
- [root@node1 ~]# ifconfig eno16777736 | grep "inet" | cut -d' ' -f10
- 192.168.6.89
6. 列出 / etc 目录下所有以. conf 结尾的文件的文件名, 并将其名字转换为大写后保存至 / tmp/etc.conf 文件中
[root@node1 ~]# ls -R /etc | grep ".conf$" | tr 'a-z' 'A-Z'> /tmp/etc.conf
7. 显示 / var 目录下一级子目录或文件的总个数
这道题是不是有歧义? 所以给两种答案:
限于 / var 目录下的这一层目录:
- [root@node1 ~]# find /var | grep "^/var\(/[^/]*\)\{2\}$" | wc -l
- 81
限于 / var 目录下的这一层目录的子目录:
- [root@node1 ~]# find /var | grep "^/var/[^/]*$" | wc -l
- 21
- or [root@node1 ~]# ls -A /var | wc -l
8. 取出 / etc/group 文件中第三个字段数值最小的 10 个组的名字
- [root@node1 ~]# sort -n -t: -k3 /etc/group | head | cut -d: -f1
- root
- bin
- daemon
- sys
- adm
- tty
- disk
- lp
- mem
- kmem
9. 将 / etc/fstab 和 / etc/issue 文件的内容合并为同一个内容后保存至 / tmp/etc.test 文件中
[root@node1 ~]# cat /etc/fstab /etc/issue> /tmp/etc.test
来源: http://www.bubuko.com/infodetail-2637745.html