测试常用 linux 命令(除开 linux 三剑客)

测试常用命令(未包含 linux 三剑客)

linux 三剑客会额外出博文讲解

  • tail(从尾部查看日志)

    # 从尾部查看,默认查看倒数 10 行,这里 f 表示会不断刷新
    tail -f [file]
    
    # 从尾部查看,查看倒数 20 行数据,n 表示多少行,且不断刷新
    tail -fn -20 [file]
    
    # 从 100 行到末尾
    tail -n +100 [file]
    
  • head(从头部查看日志)

    # 从头部查看,默认查看正数 10 行
    head [file]
    
    # 从头部查看,查看正数 20 行数据,n 表示多少行
    head -n 20 [file]
    
    # 从头部查看,假如总共 120 行,现在要查看正数 20 行,下面方式也是可行的,想想为啥
    head -n -100 [file]
    
  • less 和 more(查看日志)

    # 查看日志支持上下滚屏
    less [file]
    
    # 查看日志仅能向前不能向后
    more [file]
    
  • sort(排序)

    与管道结合使用,与 uniq 命令结合使用

    # 查看日志正序排序
    sort -n
    
    # 查看日志倒序排序
    sort -r
    
  • uniq(Uniq 去重)

    去重命令,常与 sort 命令结合使用

    # 删除文件中重复的行并呈现出来,c 表示重复出现的次数,会在行前显示
    uniq -c [file]
    
    # 仅显示重复出现的行
    uniq -d [file]
    
  • diff(Differ 比较不同)

    比较不同

    # 比较两个文件的不同,忽略大小写
    diff -i [file1] [file2]
    
  • find(Find 查找目录以及文件)

    # find [目录] options,找文件
    find /var -name "*.log"
    
  • ps(Process Status 进程状态)

    ps 命令的关注点在于进程,主要是本机的进程,更多关注性能,资源使用情况等

    # UID     PID    PPID	  C          STIME	  TTY      TIME               CMD
    # 用户ID  进程ID  父进程ID	 CPU占用率	 开始时间  终端设备  此进程运行的总时间  命令名
    # root    1      0         0         Jan10     ?        00:00:01          某一命令名
    ps -ef
    # 查看 java 相关的进程
    ps -ef | grep java
    
    # ps 查看进程,cpu,MEM 等信息
    USER  PID    %CPU	   %MEM	  VSZ   RSS	   TTY   STAT   START    TIME	   COMMAND
    用户  进程号  cpu占用率  。。。 。。。 。。。 。。。 。。。  开始时间  详细时间  命令
    root  1      0.0        0.0    0     0       ?     Ss    2018      0:00     
    ps -aux
    
  • kill(杀死进程)

    杀死进程

    有的可能杀死不了的可以用 -9 来实现,这两种主要是向进程发送了不同的信号,-9 发送的信号可以彻底杀死进程,通过 kill -l 来查看有哪些信号,会显示出 64 种

    # 杀死进程
    kill -l
    # 杀死进程
    kill [PID]
    # 彻底杀死进程
    kill -9 [PID]
    
  • netstat(Network Status 网络状态)

    主要关注的是网络状态,对内网外网活动的观察,更多的是注意到安全

    -nlpt可以查看内网 ip,外网 ip,端口等信息,n 表示直接使用 ip 地址而不使用域名服务器,l 表示显示监控中服务器的 Socket,p 表示正在使用的程序识别码和程序名称,t 表示显示 TCP 传输协议的连线情况

    # 查看进程
    
    # Proto       Recv-Q        Send-Q         Local Address  Foreign Address  State  PID/Program name
    # TCP还是UDP  接收请求的个数  发送请求的个数  内网地址        外网地址          状态   进程号/进程名
    # tcp         0             0              127.0.0.1:25   0.0.0.0:*        LISTEN  1592/master
    
    netstat -nlpt
    
    # u 表示 UDP
    netstat -nlpu
    
    # 过滤出 80 端口信息,可以查看端口是否被占用
    netstat -nlp | grep 80
    
  • 查看硬件状况

    查看 cpu,内存等占用情况

    # 查看 cpu 状况
    cat /proc/cpuinfo
    # 查看内存信息
    cat /proc/meminfo
    # 查看硬盘信息,列出设备分区表
    fdisk -l
    # 查看磁盘信息
    # 文件系统 容量 已用 可用 已用% 挂载点
    df -f
    # 查看型号
    dmidecode | grep 'Product Name'
    
  • curl(CommandLine URL 命令行 URL)

    强大的 http 命令行工具

    # 可以直接查看网页
    curl www.baidu.com
    
  • 其他

    ########## top ##########
    # 查看 cpu 占用率和内存占用率较高的进程,动态过程
    top
    
    ########## wc ##########
    # 统计行数,词数,字节数
    wc file
    # 统计行数
    wc -l file
    # 统计字数
    wc -w file
    
    ########## seq ##########
    # seq 序列,产生 1-100 的整数
    seq 1 100
    # 产生 1-100 增量为 2 的整数
    seq 1 2 100
    
    ########## test ##########
    # 直接使用不产生真假的输出,需要在 shell 中在判断后接上此表达式
    test 1 -eq 1
    
发布了124 篇原创文章 · 获赞 40 · 访问量 6万+

猜你喜欢

转载自blog.csdn.net/abcnull/article/details/103939369