课程内容#
uptime 系统运行时长和平均负载#
-
用来监测系统开机多久了、有几个用户登陆着、运行状态 (负载)
-
学会用 --help 查看命令帮助
w 用户列表及运行的任务#
-
当系统很卡时,可以看看当前进程正在执行的命令
who 显示当前登录用户信息#
-
有点像精简的 w
-
当 --help 信息过多时,学会使用 tldr
-
-q 查看所有登陆用户及数量
-
-H 显示头
whoami、who am i 当前有效 / 真实的用户名#
-
sudo -i 用超级用户权限启动默认 Shell
-
who i am = who am i
-
who am i 其实属于 who 命令,am i 是参数
last 用户最近登录信息#
应用:查出最近登录最频繁的三个用户
-
清洗空行【"^$"】、按空格切割再取第 1 列、按字典序 [即 ASCII 码序] 排序、计数、按数字排倒序
-
cut -c 10-15:按字符切,取某一列对应第 10-15 个字符
【延伸】词频统计(a.log 为 man 手册的 ls、man、stdio、scanf 内容)
-
tr 字符替换命令
- -c 反向替换
- -s 压缩连续的重复字符
uname 系统信息#
- uname -a 很完整的系统信息 [机器一上手先用这条命令]
date 显示或设置系统时间与日期#
-
可以自定义字符串格式,注意大小写自行尝试即可
-
[PS] NTP—— 网络时间协议,通过时区同步时间
- 来自维基百科,分布式结构类似 DNS,但它是单向联系的
- 应用:银行系统、网购
- 时间服务器配置见 /etc/ntp.conf
- 时区可查看 /usr/share/zoneinfo
- 修改时区可通过 ln -sf [软连接强制覆盖] 命令,将 /etc/localtime 连接到时区
- 举例:sudo ln -sf /usr/share/zoneinfo/Asia/ 城市 /etc/localtime
附加知识点#
- cal 显示日历
- echo -e 可以让反斜杠 \ 生效
- 如 echo -e "\033 [32m123\033 [0m456" 输出颜色,这类似 printf
- $[] 只做整数计算
思考点#
Tips#
- 缩写可能代表
- -h:help、human、header(w -h)
- -p:pretty
- shell 脚本里空格是敏感的
- 在 Shell 里定义的变量是在进程里的,退出 Shell [或断开 SSH 连接] 变量就消失了
- wget 可以下载文档数据