1、ps 命令
ps命令用于显示当前进程的状态
常用参数
- -A:列出所有的进程
- -aux:显示所有包含其他使用者的进程
举例说明
- 显示进程信息
ps -A
PID TTY TIME CMD
1 ? 00:00:02 init
2 ? 00:00:00 kthreadd
3 ? 00:00:00 migration/0
4 ? 00:00:00 ksoftirqd/0
5 ? 00:00:00 watchdog/0
6 ? 00:00:00 events/0
- 查看指定进程
ps -ef | grep 进程关键字
ps -ef | grep java // 查找java进程关键字
- 显示所有进程信息
ps -ef
UID PID PPID C STIME TTY TIME CMD root 1 0 0 10:22 ? 00:00:02 /sbin/init root 2 0 0 10:22 ? 00:00:00 [kthreadd] root 3 2 0 10:22 ? 00:00:00 [migration/0] root 4 2 0 10:22 ? 00:00:00 [ksoftirqd/0]
- 显示指定用户的进程信息
ps -u root # 显示root用户的进程信息
2、kill 命令
kill命令用于终止正在运行的进程,基本语法格式如下:
代码语言:javascript复制kill [参数] [PID]
常用参数
- -l:列出所有可用的信号、
- -:发送特定的信号给目标进程,如 -9 表示发送 KILL 信号,即强制终止进程 最常用的信号是: SIGKILL(信号9):立即结束进程,不能被捕获或忽略。 SIGTERM(信号15):正常结束进程,可以被捕获或忽略。 SIGSTOP(信号19):暂停进程,不能被捕获、忽略或结束。 SIGCONT(信号18):继续执行被暂停的进程。 SIGINT(信号2):通常是Ctrl C产生的信号,可以被进程捕获或忽略
举例说明
- 结束PID为365354的进程
kill 365354
- 强制结束PID为365354的进程
kill -9 365354
注意事项
在使用 kill 命令时,需要具有相应的权限,否则可能无法终止进程。 某些进程可能需要发送多次信号才能终止,比如一些守护进程。 强制杀死进程可能会导致数据丢失或其他副作用,因此应谨慎使用。
3、date 命令
date命令可以用来显示或设定系统的日期与时间
常用参数说明
- -d:通过字符串显示时间格式
- -r:显示文件的上次修改时间
- -R: 按照 RFC 5322 格式输出时间和日期,例如: Mon, 14 Aug 2006 02:34:56 -0600
- FORMAT 参数整理如下:
- %% 输出字符 % %a 星期几的缩写 (Sun…Sat) %A 星期的完整名称(Sunday…Saturday)。 %b 缩写的月份名称(例如,Jan) %B 完整的月份名称(例如,January) %c 本地日期和时间(例如,Thu Mar 3 23:05:25 2005) %C 世纪,和%Y类似,但是省略后两位(例如,20) %d 日 (01…31) %D 日期,等价于%m/%d/%y %e 一月中的一天,格式使用空格填充,等价于%_d %F 完整的日期;等价于 %Y-%m-%d %g ISO 标准计数周的年份的最后两位数字 %G ISO 标准计数周的年份,通常只对%V有用 %h 等价于 %b %H 小时 (00…23) %I 小时 (01…12) %j 一年中的第几天 (001…366) %k 小时,使用空格填充 ( 0…23); 等价于 %_H %l 小时, 使用空格填充 ( 1…12); 等价于 %_I %m 月份 (01…12) %M 分钟 (00…59) %n 新的一行,换行符 %N 纳秒 (000000000…999999999) %p 用于表示当地的AM或PM,如果未知则为空白 %P 类似 %p, 但是是小写的 %r 本地的 12 小时制时间(例如 11:11:04 PM) %R 24 小时制 的小时与分钟; 等价于 %H:%M %s 自 1970-01-01 00:00:00 UTC 到现在的秒数 %S 秒 (00…60) %t 插入水平制表符 tab %T 时间; 等价于 %H:%M:%S %u 一周中的一天 (1…7); 1 表示星期一 %U 一年中的第几周,周日作为一周的起始 (00…53) %V ISO 标准计数周,该方法将周一作为一周的起始 (01…53) %w 一周中的一天(0…6),0代表星期天 %W 一年中的第几周,周一作为一周的起始(00…53) %x 本地的日期格式(例如,12/31/99) %X 本地的日期格式(例如,23:13:48) %y 年份后两位数字 (00…99) %Y 年 %z hhmm 格式的数值化时区格式(例如,-0400)
举例说明
- 显示当前时间
date
# Tue May 24 10:24:43 CST 2024
- 按“年-月-日” 格式输出
date "%Y-%m-%d"
- 输出昨天的日期
date -d "1 day ago" "%Y-%m-%d"
- 输出5秒后的时间
date -d "5 second" "%Y-%m-%d %H:%M:%S"
- 日期格式转换,“年-月-日” 转为“年/月/日”
date -d "2024-05-24" "%Y/%m/%d"
- 时间加减操作
date %Y%m%d # 显示年月日
date -d " 1 day" %Y%m%d # 显示后一天的日期
date -d "-1 day" %Y%m%d # 显示前一天的日期
date -d "-1 month" %Y%m%d # 显示上一月的日期
date -d " 1 month" %Y%m%d # 显示下一月的日期
date -d "-1 year" %Y%m%d # 显示前一年的日期
date -d " 1 year" %Y%m%d # 显示下一年的日期
4、logname 命令
logname命令用于显示用户名称,执行logname指令,它会显示目前用户的名称
举例说明
代码语言:javascript复制logname
# root
5、top 命令
top命令是常用的实时系统监控工具,它提供了一个动态的、交互式的实时视图,显示系统的整体性能信息以及正在运行的进程的相关信息
参数说明
- -d <秒数>:指定 top 命令的刷新时间间隔,单位为秒
- -n <次数>:指定 top 命令运行的次数后自动退出
- -p <进程ID>:仅显示指定进程ID的信息
- -u <用户名>:仅显示指定用户名的进程信息
- -i:不显示闲置(idle)或无用的进程
- -c:显示完整的命令行而不截断
举例说明
- 显示进程信息
top
- 以完整命令显示进程信息
top -c
- 设置信息更新次数n,过后自动退出
top -n 5
6、sudo 命令
sudo命令以系统管理者的身份执行指令,也就是说,经由 sudo 所执行的指令就好像是 root 亲自执行
参数说明
- -u:不加此参数,代表要以 root 的身份执行指令,而加了此参数,可以以 username 的身份执行指令
举例说明
- 以指定用户执行命令
sudo -u tcms ls -l
- 以root权限执行上一条命令
sudo !!
- 用特定用户编辑脚本命令
sudo -u tcms vi /home/sk/test.txt
7、id 命令
id命令用于显示用户的ID,以及所属群组的ID
参数说明
- -g 或 --group 显示用户所属群组的ID
- -G 或 --groups 显示用户所属附加群组的ID
- -n 或 --name 显示用户,所属群组或附加群组的名称
- -u 或 --user 显示用户ID
举例说明
- 显示当前用户的id
id
# uid=0(root) gid=0(root) groups=0(root),1(bin),2(daemon),3(sys),4(adm),6(disk),10(wheel) context=root:system_r:unconfined_t
- 显示用户群组的 ID
id -g
- 显示所有群组的 ID
id -G
- 显示指定用户信息
id -u tcms
8、free 命令
free命令用于显示内存状态
参数说明
- -b 以Byte为单位显示内存使用情况。
- -k 以KB为单位显示内存使用情况。
- -s<间隔秒数> :持续观察内存使用状况
举例说明
- 显示内存的使用情况
free
total used free shared buffers cached
Mem: 254772 184568 70204 0 5692 89892
- 周期性的查询内存使用信息
free -s 5 # 每5s执行一次命令
9、adduser 命令
adduser 命令用于新增使用者帐号,adduser 与 useradd 指令为同一指令。
举例说明
- 新增一个一般用户
adduser tcms
- 为新增的用户指定用户组
adduser -g root tcms # 指定用户所在的组为root用户组
- 创建一个系统用户
adduser -r rtcms
10、clear 命令
clear命令用于清除屏幕,基本语法如下,很简单不在详细赘述。
代码语言:javascript复制clear
11、crontab 命令
crontab命令在linux系统中用于设置周期性被执行的指令的命令
参数说明
- -e : 执行文字编辑器来设定时程表,内定的文字编辑器是 Vi/Vim
- -r : 删除目前的时程表
- -l : 列出目前的时程表
举例说明
- 查看当前用户的 crontab 文件
crontab -l
- 删除当前用户下的crontab文件
crontab -r
- 编辑当前用户下的crontab问价
crontab -e
结束语
以上总结的命令,主要是针对Linux系统管理部分日常常用的一些命令,并列举了每个命令高频使用的参数和应用场景,如有其他疑问请大家评论留言指出,欢迎大家指正。最后,希望这篇博文能给大家提供些许帮助,感谢大家的支持!