07-进程管理

nobility 发布于 2023-09-19 02-Linux系统管理 2666 次阅读


进程管理

查看登入用户

  • who:返回所有当前登入用户
  • w:返回所有当前登入用户,信息比who更加详细
  • last:返回所有用户登入登出信息

查看和终止进程

  • ps:进程状态的静态列表,默认当前终端当前用户的进程
    • ps -ef:列出所有进程
    • ps -efH:乔木状列出所有进程
    • ps -axjf:以树形结构显示所有进程
    • ps -u root:列出该root用户的所有进程
    • ps -aux:通过CPU和内存使用情况来过滤进程
    • ps -aux --sort -pmem:根据内存使用率来排序,也可以使用-pcpu对CPU占用率来排序
  • pstree:以树形结构显示所有进程
  • top:进程状态的动态列表,默认按照CPU占用率排序
    • q键:退出
    • f键:使用空格键添加或删除显示列,使用s键指定按照那一列排序,使用q键退出
    • u键:过滤用户
    • k键:根据进程号结束进程
    • s键:动态刷新时间,默认是三秒
  • kill:根据进程号杀死进程
    • 9:强制终止
  • pidof:根据程序名获取进程号
  • killall:根据程序名杀死进程

后台进程

  • &:在命令后追加&符号,该进程会进入后台运行,该进程是与当前终端相关联的,也就是说关闭当前终端该后台进程也会终止执行
  • nohup:后跟一个执行的命令,此进程会进入后台运行,并且与当前终端无关,会将该命令的输出输出到nohup.out文件中
  • Ctrl + z:该快捷键会将前台程序暂停运行后放入后台
  • jobs:后台进程列表
  • bg:将后台进程从暂停执行状态转化为运行状态,若不加参数则默认是最近使用Ctrl + z的进程,也可以根据后台进程编号
  • fg:根据后台进程编号将后台进程从后台转到前台运行

定时任务

  • at:延时执行命令,使用Ctrl + D快捷键结束输入命令
    • 日期是按照时:分 月/日/年的格式指定具体时间
    • 以当前时间为基准now 加减时间,需要指定时间单位
      • minutes:分钟
      • hours:小时
      • days:天
      • weeks:星期
      • months:月
      • years:年
  • atq:显示at命令等待执行的队列
  • atrm:根据atq队列中的任务编号来删除任务
  • sleep:使当前命令行休眠指定时间,默认是秒,单位:m是分钟、h是小时、d是天
  • crontab:定时执行命令,每个用户都有自己单独的crontab文件
    • l:显示crontab文件内容
    • e:修改crontab文件,不存在则自动创建,在语法正确的情况下会输出crontab: installing new crontab表示正在安装新的crontab文件
    • r:删除crontab文件
crontab文件的格式

分(0-59) 时(0-23) 日(1-31) 月(1-12) 周(0-6) 命令

  • 若某个位置是*号则代表某个任意,比如0 0 * * * 命令代表每天00:00时执行该命令
  • 可以使用逗号分隔多个时间点,也可以使用短横线连接多个时间点,比如0 0 1-5,25-30 * * 命令代表月1-15日和25-30日执行该命令
  • 某个位置是*/数值则代表每隔该数值时间,比如*/5 * * * * 命令代表每隔5分钟执行该命令
加油啊!即便没有转生到异世界,也要拿出真本事!!!\(`Δ’)/
最后更新于 2023-09-19