【linux系统】命令学习(八)bash 编程实战学习
常见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 编程实战学习的更多相关文章
- Shell高级编程视频教程-跟着老男孩一步步学习Shell高级编程实战视频教程
Shell高级编程视频教程-跟着老男孩一步步学习Shell高级编程实战视频教程 教程简介: 本教程共71节,主要介绍了shell的相关知识教程,如shell编程需要的基础知识储备.shell脚本概念介 ...
- (转)跟着老男孩一步步学习Shell高级编程实战
原文:http://oldboy.blog.51cto.com/2561410/1264627/ 跟着老男孩一步步学习Shell高级编程实战 原创作品,允许转载,转载时请务必以超链接形式标明文章 原 ...
- 跟着老男孩一步步学习Shell高级编程实战
原创作品,允许转载,转载时请务必以超链接形式标明文章 原始出处 .作者信息和本声明.否则将追究法律责任.http://oldboy.blog.51cto.com/2561410/1264627 本sh ...
- Linux 常用命令解析和Bash Shell使用示例脚本演示
摘要 Linux命令是基于文本格式输入输出的一种程序,依照Unix哲学中强调的程序功能简单,输入宽松,输出严谨,各种程序组合能够具有更强大的功能,而具有这样的灵活性的主要原因是Linux规定程序 ...
- 大三仍是Linux系统小白的我给大家讲讲学习历程
我与Linux结缘是在大三的时候.我与Linux熟识是在偶然遇到<Linux就该这么学>的时候.因为我是电子信息工程专业,在高年级时开设了嵌入式课程,嵌入式系统是一种专用的计算机系统,作为 ...
- java并发编程实战学习(3)--基础构建模块
转自:java并发编程实战 5.3阻塞队列和生产者-消费者模式 BlockingQueue阻塞队列提供可阻塞的put和take方法,以及支持定时的offer和poll方法.如果队列已经满了,那么put ...
- Linux系统--命令行安装weblogic10.3.6
Linux下命令行安装weblogic10.3.6 一.安装前准备工作: 1.创建用户useradd weblogic;创建用户成功linux系统会自动创建一个和用户名相同的分组,并将该用户分到改组中 ...
- 大数据学习笔记——Hadoop编程实战之Mapreduce
Hadoop编程实战——Mapreduce基本功能实现 此篇博客承接上一篇总结的HDFS编程实战,将会详细地对mapreduce的各种数据分析功能进行一个整理,由于实际工作中并不会过多地涉及原理,因此 ...
- Linux系统从新手到运维老鸟学习指南
Linux是在1990年底到1991年由芬兰大学的学生LinusTorvalds利用Minix操作系统作为开发平台编写了内核,目前由世界各地的爱好者共同开发和维护的与UNIX兼容的操作系统,也是自由和 ...
随机推荐
- C++ 可变数组实现
话不多说,直接上代码,看注释 template<class T> // 支持传入泛型,但string这种可变长度的类型还不支持 class Array { int mSize = 0, m ...
- 浏览器输入URL之后,HTTP请求返回的完整过程
1.输入url,按下回车时,先做一个redirect(重定向),因为浏览器可能记录本机的地址已经永久跳转成新的地址,所以一开始浏览器就先要判断下需不需要重定向,以及重定向到哪里:2.然后第二步就是看A ...
- Java程序的种类
Java程序的种类 Application:Java应用程序,是可以由Java解释器直接运行的程序. Applet:即Java小应用程序,是可随网页下载到客户端由浏览器解释执行的Java程序. Ser ...
- Hbase修复工具Hbck
因为前面Hbase2集群出现过一次故障,当时花了一个周末才修好,就去了解整理了一些hbase故障的,事故现场可以看前面写的一篇:Hbase集群挂掉的一次惊险经历 一. HBCK一致性 一致性是指Reg ...
- null与undefined到底有啥区别?
话不多说,直接先上结论: null 和 undefined 基本相同,只有细微差别 null 是表示缺少的标识,指示变量未指向任何对象,转为数值为 0 undefined 表示 "缺少值&q ...
- 洛谷4400 BlueMary的旅行(分层图+最大流)
qwq 首先,我们观察到题目中提到的每天只能乘坐一次航班的限制,很容易想到建分层图,也就是通过枚举天数,然后每天加入一层新的点. (然而我一开始想的却是erf) 考虑从小到大枚举天数,然后每次新建一层 ...
- 洛谷4606 SDOI2018战略游戏(圆方树+虚树)
QWQ深受其害 当时在现场是真的绝望...... 现在再重新来看这个题 QWQ 根据题目所说,我们可以发现,对于每一个集合中的节点,我们实际上就是要求两两路径上的割点的数目 考虑到又是关于点双的题目, ...
- jenkins容器内安装Python3之后使用pip3 install xxx失败,可以考虑换国内源
问题:pip3 install xxx失败 方案一:修改配置文件 首先在当前用户目录下建立文件夹.pip,然后在文件夹中创建pip.conf文件,再将源地址加进去即可. mkdir ~/.pipvim ...
- Vulnhub实战-Dockhole_2靶机👻
Vulnhub实战-Dockhole_2靶机 靶机地址:https://www.vulnhub.com/entry/darkhole-2,740/ 1.描述 hint:让我们不要浪费时间在蛮力上面! ...
- HashMap、ConcurrentHashMap红黑树实现分析
本文学习知识点 1.二叉查找树,以及二叉树查找带来的问题. 2.平衡二叉树及好处. 3.红黑树的定义及构造. 4.ConcurrentHashMap中红黑树的构造. 在正式分析红黑树之前,有必要了解红 ...