Linux常用命令

时间:2021-2-26 作者:admin

Linux常用命令

1.查看进程
  • 查看进程信息获取PID : ps -ef | grep 进程名

  • 查看进程启动时间: ps -p PID -o lstar

  • 查看进程静态统计信息: ps option: a u x -e -l -f
    – 以简单列表的形式显示出进程信息 : ps aux
    根据内存使用率降序排序:ps aux –sort +%mem
    根据cpu使用率降序排序:ps aux –sort +%cpu
    显示出的信息列表标题各个字段含义:
    USER: 启动该进程的用户账号的名称。
    PID:该进程的系统号,在当前系统中是唯一的。
    %CPU:CPU占用比
    %MEN:内存占用比
    VSZ:占用虚拟内存(swap空间)的大小
    RSS: 占用常驻内存(物理内存)的大小
    TTY: 表示该进程在哪个终端上运行,“?”代表未知或不需要终端。
    STAT:显示当前进程状态(S 表示可中断的休眠进程、s表示父进程、<表示高优先级、N表示低优先级、R表示正常运行的进程、l 表示多线性进程、D表示不可中断的休眠进程、+ 表示前台进程、z表示僵尸进程)
    START: 启动该进程的时间
    TIME: 该进程占用的CPU时间
    COMMAND:启动该进程的命令名称
    – 以长格式显示系统中的进程信息:ps -elf
    与ps aux命令不同的各字段含义描述:
    PPID : 当前进程的父进程
    C:表示cpu的占用
    PRI : 用户态进程的优先级
    NI : 内核态(取值范围:-20→19,数值越低,优先级越高)
    ADDR : – 表示正在运行
    WCHAN :当前进程的内核态的名称

  • 查看进程的动态信息 : top
    (每隔 3秒刷新一次,类似于Windows 系统中的任务管理器)

    相关字符含义如下:
    系统任务(task)信息:
    total : 总进程数
    runnnig:正在运行的进程数
    sleeping :休眠的进程数
    stopped:中止的进程数
    zombie : 僵尸进程的进程数

    1>CPU占用信息:us表示用户占用;sy表示内核占用;ni 优先级调度占用;id表示空闲CPU;wa表示I/O等待占用;hi表示硬件中断应用;si表示软件中断占用;st表示虚拟化占用。
    2>内存(Mem)占用信息:total表示总内存空间;used表示已用内存;free表示空闲内存;buffers表示缓冲区域。
    3>交换空间(swap)占用:total表示总交换空间;used表示已用交换空间;free表示空闲交换时间;cached表示缓存空间。

  • 根据特定条件查询进程的PID : pgrep
    结合 “-l” 选项可同时输出对应的进程名;
    结合 “-U” 选项查询指定用户的进程。
    例子:
    查看进程名中含有“log” 的进程:pgrep ‘log’
    查看进程名中含有“log” 的进程并显示进程名:pgrep -l ‘log’
    查看用户“root”的进程并显示进程名:pgrep -l -u root

  • 查看进程树: pstree
    常见选项:
    “-a”: 显示完整信息
    “-u”: 列出对应的用户名
    “-p”: 列出对应的PID号
    例子:
    查看完整命名、用户、PID:pstree -aup
    指定用户查看:pstree -ap root

2.查看日志
  • 查看实时日志:tail -f XXX.log (Ctrl+C 退出)
  • 搜索关键字附近日志:cat -n filename | grep “关键字”
  • 实时监控100行日志: tail -100f test.log
  • 查询日志尾部最后10行的日志 :tail -n 10 test.log
  • 查询10行之后的所有日志: tail -n +10 test.log
  • 查询日志文件中的头10行日志:head -n 10 test.log
  • 查询日志文件除了最后10行的其他所有日志:head -n -10 test.log
  • 使用vim查看
    1>进入vim编辑模式:vim filename
    2>输入“/关键字”,按enter键查找
    3>查找下一个,按“n”即可
    4> 退出:按ESC键后,接着再输入:号时,vi会在屏幕的最下方等待我 们输入命令:
    wq! 保存退出
    q! 不保存退出
  • 根据行号查找(查看第20行前后10行日志)
    – 得到关键日志行号:cat -n test.log |grep “debug” (假设得到行号为20)
    – 查询行号附近的日志:cat -n test.log | tail -n +10 | head -n 20
    (查看第10行以后的20行日志)
  • 根据日期查看:sed -n ‘/2021-02-23 00:00:01/,/2021-02-23 00:02:00/p’ test.log
    (日期必须是日志中打印出来的日期)
  • 日志分页打印,通过空格键翻页:cat -n test.log |grep “XXX” |more
  • 将日志保存在文件中:cat -n test.log |grep “debug” ** >**XXX.tx
3.杀死进程
  • 强制杀死进程:kill -9 PID
  • 指定进程名杀死进程 :pkill -9 进程名(部分名称)
  • 指定进程名杀死进程 :killall -9 进程名(全名称)
声明:本文内容由互联网用户自发贡献自行上传,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任。如果您发现有涉嫌版权的内容,欢迎进行举报,并提供相关证据,工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。