常见shell : bash   sh  zsh

windows: git bash    cygwin

MAC : terminal iterm

netstat

  是linux下用于显示网络状态的命令。通过它能统计端口情况,网络连接状态,路由表等信息。在网络开发或运维中,经常会使用netstat来查看网络状态。

  常用参数说明:

    -l或–listening 显示监控中的服务器的Socket。
    -n或–numeric 直接使用IP地址,而不通过域名服务器。
    -p或–programs 显示正在使用Socket的程序识别码和程序名称。
    -t或–tcp 显示TCP传输协议的连线状况。
  日常用法:

    netstat -tnlp
    netstat -tnp
  原文链接:https://blog.csdn.net/weixin_43627624/article/details/107133778

范例:

  netstat -tnp | grep ":22" | awk '{print $5}' | awk -F: '{print $1}' | uniq -c | sort -nr |wc -l

  查看当前网络连接状态,查找关于:22的网络连接,取第五列数据,在第五列数据中以:为分隔符取第一列,去重并统计数量,按数字排序并倒序排序,统一共有多少行。

  head -3  jmeter.log

  查看前三行

  more jmeter.log

  less jmeter.log     -----less 更好用,查询,上下键可以浏览数据

  

  diff 1 2  比较1 和 2 的区别

  cat 120601.log | awk '{print $1}' | sort | uniq -c | sort -nr | head -n 3

  less 120601.log | awk '{print $7}'| awk -F? '{print $1}' | grep "/topics/[0-9]*/"

  less 120601.log | awk '{print $7}'| awk -F? '{print $1}' | grep  "/topics/[0-9][0-9]5"

  less 120601.log | grep topics | grep -E "/topics/[0-9]{1,10}[?]{1}" | sed -E 's#[0-9]{1,10}#:int:#g' | awk '{print $7}' | sort | uniq -c

  grep topics 120601.log | awk '{print $7}' | sed 's#?.*##g'

  grep topics 120601.log | awk '{print $7}' | sed 's#?.*##g' | sed 's#/topics/[0-9]*$#/topics/topics#' | sort | uniq -c | sort -nr |head -5

  grep topics 120601.log | awk '{print $7}' | sed 's#?.*##g' | sed 's#/topics/[0-9]*$#/topics/topics#' | sed 's#/topics/[0-9]*/replies/[0-9]*/.*#topics/replies#' | sort | uniq -c | sort -nr |head -5

  grep topics 120601.log | grep -v "topoooo"   过滤掉topoooo的信息

http常见协议

  200 30x 400 404 500 503

ps :查看 Linux 中当前运行的进程的命令

  man ps

  ps -ef 斜杠分隔 标准格式输出 ps -e  打印所有进程

    UID    //用户ID、但输出的是用户名 
    PID    //进程的ID 
    PPID    //父进程ID 
    C      //进程占用CPU的百分比 
    STIME  //进程启动到现在的时间 
    TTY    //该进程在那个终端上运行,若与终端无关,则显示? 若为pts/0等,则表示由网络连接主机进程。 
    CMD    //命令的名称和参数  

    

  ps -eo 获取少数字段,可以进行分析

  ps -o pid 只打印有用的数据

  ps aux  用BSD的格式来显示

    USER      //用户名 
    %CPU      //进程占用的CPU百分比 
    %MEM      //占用内存的百分比 
    VSZ      //该进程使用的虚拟內存量(KB) 
    RSS      //该进程占用的固定內存量(KB)(驻留中页的数量) 
    STAT      //进程的状态

      D      //无法中断的休眠状态(通常 IO 的进程); 
      R      //正在运行可中在队列中可过行的; 
      S      //处于休眠状态; 
      T      //停止或被追踪; 
      W      //进入内存交换 (从内核2.6开始无效); 
      X      //死掉的进程 (基本很少见); 
      Z      //僵尸进程; 
      <      //优先级高的进程 
      N      //优先级较低的进程 
      L      //有些页被锁进内存; 
      s      //进程的领导者(在它之下有子进程); 
      l      //多线程,克隆线程(使用 CLONE_THREAD, 类似 NPTL pthreads); 
      +      //位于后台的进程组;
    START    //该进程被触发启动时间 
    TIME      //该进程实际使用CPU运行的时间

  

  for i in {1..8};do sleep 1 ; ps -o %cpu -p pid; done   -------ps -o %cpu -p pid循环八次

  for i in {1..8};do sleep 1 ; ps -o %cpu,%mem -p pid; done   -------ps -o %cpu -p pid循环八次

kill -9 pid    关闭进程

top

  经常用来监控linux的系统状况,是常用的性能分析工具,能够实时显示系统中各个进程的资源占用情况。

  -d:number代表秒数,表示top命令显示的页面更新一次的间隔。默认是5秒。

   -b:以批次的方式执行top。

  -n:与-b配合使用,表示需要进行几次top命令的输出结果。

  -p:指定特定的pid进程号进行观察。

  ?:显示在top当中可以输入的命令

  P:以CPU的使用资源排序显示

  M:以内存的使用资源排序显示

  N:以pid排序显示

  T:由进程使用的时间累计排序显示

  k:给某一个pid一个信号。可以用来杀死进程

  r:给某个pid重新定制一个nice值(即优先级)

  q:退出top(用ctrl+c也可以退出top)。

  top -b -p 1132 -n 2 -d 1 | grep --line-buffered 1132 | awk 'BEGIN{print "CPU MEM"}{print $9,$10;c+=$9;m+$10}END{print "-------";print c/NR,M/NR}'

  

  top -b -p 1132 -n 2 -d 1 | grep --line-buffered 1132 | awk 'BEGIN{print "CPU MEM avgc avgs"}{c+=$9;m+=$10}{print $9,$10,c/NR,m/NR}'

  

  jobs -l 查看当前运行进程

  kill pid 杀掉命令

  

  

  

【linux系统】命令学习(八)bash 编程实战学习的更多相关文章

  1. Shell高级编程视频教程-跟着老男孩一步步学习Shell高级编程实战视频教程

    Shell高级编程视频教程-跟着老男孩一步步学习Shell高级编程实战视频教程 教程简介: 本教程共71节,主要介绍了shell的相关知识教程,如shell编程需要的基础知识储备.shell脚本概念介 ...

  2. (转)跟着老男孩一步步学习Shell高级编程实战

    原文:http://oldboy.blog.51cto.com/2561410/1264627/  跟着老男孩一步步学习Shell高级编程实战 原创作品,允许转载,转载时请务必以超链接形式标明文章 原 ...

  3. 跟着老男孩一步步学习Shell高级编程实战

    原创作品,允许转载,转载时请务必以超链接形式标明文章 原始出处 .作者信息和本声明.否则将追究法律责任.http://oldboy.blog.51cto.com/2561410/1264627 本sh ...

  4. Linux 常用命令解析和Bash Shell使用示例脚本演示

     摘要 Linux命令是基于文本格式输入输出的一种程序,依照Unix哲学中强调的程序功能简单,输入宽松,输出严谨,各种程序组合能够具有更强大的功能,而具有这样的灵活性的主要原因是Linux规定程序 ...

  5. 大三仍是Linux系统小白的我给大家讲讲学习历程

    我与Linux结缘是在大三的时候.我与Linux熟识是在偶然遇到<Linux就该这么学>的时候.因为我是电子信息工程专业,在高年级时开设了嵌入式课程,嵌入式系统是一种专用的计算机系统,作为 ...

  6. java并发编程实战学习(3)--基础构建模块

    转自:java并发编程实战 5.3阻塞队列和生产者-消费者模式 BlockingQueue阻塞队列提供可阻塞的put和take方法,以及支持定时的offer和poll方法.如果队列已经满了,那么put ...

  7. Linux系统--命令行安装weblogic10.3.6

    Linux下命令行安装weblogic10.3.6 一.安装前准备工作: 1.创建用户useradd weblogic;创建用户成功linux系统会自动创建一个和用户名相同的分组,并将该用户分到改组中 ...

  8. 大数据学习笔记——Hadoop编程实战之Mapreduce

    Hadoop编程实战——Mapreduce基本功能实现 此篇博客承接上一篇总结的HDFS编程实战,将会详细地对mapreduce的各种数据分析功能进行一个整理,由于实际工作中并不会过多地涉及原理,因此 ...

  9. Linux系统从新手到运维老鸟学习指南

    Linux是在1990年底到1991年由芬兰大学的学生LinusTorvalds利用Minix操作系统作为开发平台编写了内核,目前由世界各地的爱好者共同开发和维护的与UNIX兼容的操作系统,也是自由和 ...

随机推荐

  1. ECMA 2022 (es13) 新特性

    本文主要整理了截至到 2021年10月12日 为止的且处于 Stage 3->Stage 4 阶段的ECMA提案. 主要包括: Class Fields RegExp Match Indices ...

  2. openGauss X ShardingSphere,分布式方案的另一种最佳实践

    Apache ShardingSphere 持续助力于 openGauss 分布式数据库能力的构建.openGauss 数据库自 2020 年 6 月开源以来,受到了业界的广泛关注,现已吸引众多伙伴. ...

  3. 洛谷2149 Elaxia的路线(dp+最短路)

    QwQ好久没更新博客了,颓废了好久啊,来补一点东西 题目大意 给定两个点对,求两对点间最短路的最长公共路径. 其中\(n,m\le 10^5\) 比较简单吧 就是跑四遍最短路,然后把最短路上的边拿出来 ...

  4. 2020.4.6--UCF Local Programming Contest 2017的正式赛

    Problem A : Electric Bill 题目大意:进行电量分级制收费,1000kwh及以下一档收费,1000kwh以上按另一档收费,给出每个人的电量总额,问每人应支付多少钱. 思路:基础i ...

  5. Spark分区器浅析

    分区器作用:决定该数据在哪个分区 概览: 仅仅只有pairRDD才可能持有分区器,普通RDD的分区器为None 在分区器为None时RDD分区一般继承至父RDD分区 初始RDD分区数: 由集合创建,R ...

  6. Win10 配置JDK1.8 (JDK 8)环境变量

    JDK的安装: 1. JDK安装过程中,一般X掉公共JRE,因为JDK包含了JRE:     环境变量的配置: 1. 打开环境变量,编辑系统变量,新建: 变量名:JAVA_HOME 变量值:D:\so ...

  7. python jinja2初见

    吸取了长城杯的教训,学习python-web迫在眉睫. 正常难度的python_template_injection,由于现在没学面向对象,理解原理比较困难,所以先使用简单版复现:并附上正常版的常用p ...

  8. Coursera Deep Learning笔记 结构化机器学习项目 (上)

    参考:https://blog.csdn.net/red_stone1/article/details/78519599 1. 正交化(Orthogonalization) 机器学习中有许多参数.超参 ...

  9. Java:LinkedList类小记

    Java:LinkedList类小记 对 Java 中的 LinkedList类,做一个微不足道的小小小小记 概述 java.util.LinkedList 集合数据存储的结构是循环双向链表结构.方便 ...

  10. 【二食堂】Alpha - Scrum Meeting 7

    Scrum Meeting 7 例会时间:4.17 11:40 - 12:00 进度情况 组员 昨日进度 今日任务 李健 1. 继续文本区域的开发,先完成目前简陋的添加方式,再区实现勾选功能issue ...