【常用命令】Linux相关命令
[[TOC]]
iostat - 查看系统I/O状况
-k
Display statistics in kilobytes per second-m
Display statistics in megabytes per second.-d
Display the device utilization report.
示例:
[root@epic-phy-9-21 ~]# iostat -d -m
Linux 3.10.0-514.26.1.el7.x86_64 (epic-phy-9-21) 12/15/2017 _x86_64_ (32 CPU)
Device: tps MB_read/s MB_wrtn/s MB_read MB_wrtn
sda 209.95 2.26 3.46 19564882 29937790
sdc 0.00 0.00 0.00 3 0
sde 0.00 0.00 0.00 3 0
sar (网络traffic)
说明:
sar - Collect, report, or save system activity information
-n { keyword [,...] | ALL }
Report network statistics.
Possible keywords are DEV, EDEV, NFS, NFSD, SOCK, IP, EIP, ICMP, EICMP, TCP, ETCP, UDP, SOCK6, IP6, EIP6, ICMP6, EICMP6 and UDP6.
With the DEV keyword, statistics from the network devices are reported. The following values are displayed:
示例:
// 每5s抽样一次,总共抽样2次
[root@epic-phy-9-21 ~]# sar -n DEV 5 2 | grep lo
Average: IFACE rxpck/s txpck/s rxkB/s txkB/s rxcmp/s txcmp/s rxmcst/s
02:34:38 PM lo 309.60 309.60 498.68 498.68 0.00 0.00 0.00
02:34:43 PM lo 1241.20 1241.20 842.29 842.29 0.00 0.00 0.00
Average: lo 775.40 775.40 670.48 670.48 0.00 0.00 0.00
top
查看每个CPU核是使用率
操作:按键1
;
top - 10:23:11 up 100 days, 14 min, 5 users, load average: 9.25, 9.17, 9.38
Tasks: 2002 total, 11 running, 1990 sleeping, 0 stopped, 1 zombie
%Cpu0 : 7.4 us, 0.7 sy, 0.0 ni, 92.0 id, 0.0 wa, 0.0 hi, 0.0 si, 0.0 st
%Cpu1 : 3.0 us, 1.3 sy, 0.0 ni, 87.3 id, 8.3 wa, 0.0 hi, 0.0 si, 0.0 st
%Cpu2 : 67.3 us, 2.6 sy, 0.0 ni, 30.0 id, 0.0 wa, 0.0 hi, 0.0 si, 0.0 st
%Cpu3 : 32.2 us, 1.3 sy, 0.0 ni, 66.4 id, 0.0 wa, 0.0 hi, 0.0 si, 0.0 st
%Cpu4 : 34.3 us, 1.0 sy, 0.0 ni, 64.7 id, 0.0 wa, 0.0 hi, 0.0 si, 0.0 st
按线程
角度来查看CPU消耗
操作:Shift+H
查看指定进程
top -p pid
byte转Mb、GB等
操作:Shift+e
awk
打印文件制定的列,并指定分隔符
$1
: 第一列-F
: 指定分隔符
awk '{print $1}' -F "-" access.log
筛选指定行,并打印指定列
awk '/google/{print $5,$6}' access.log
查询length大于40的行,打印第3列
$0
: 表示当前行
awk 'length($0)>40{print $3}' access.log
对内容进行格式化输出
awk '{line = sprintf ( "method:%s, response:%s", $3 , $7 ); print line}' access.log
将处理文本放在指定文件
awk -f testawk access.log
sed
替换文件中的item为items输出,文件内容不发生变化
sed 's/item/items/' test.properties
输出文件的12-16行
-n
: 表示只输出指定行
sed -n '12,14p' test.properties
删除指定行输出,文件内容不发生变化
// 删除包含pool的行
sed '/pool/d' test.properties
在每行的行首
插入文本
sed -e 'i\This is header of every line' test.properties
output:
This is header of every line
performance.indicator.graphite.item[1].key=pm_statistic_memory_used_size
This is header of every line
performance.indicator.graphite.item[1].targetQuery=aliasByNode(EPIC.pm.*.memory.memory.used, 2)
This is header of every line
performance.indicator.graphite.item[1].metricType=Gauge
在每行的行尾
追加文本
sed -e 'a\end' test.properties
output:
performance.indicator.graphite.item[2].metricType=Gauge
end
performance.indicator.graphite.item[2].targetParamPattern=^(?<hostId>.*)$
end
performance.indicator.graphite.item[2].skipNullMax=8
end
对匹配的行进行替换
查找/pool/匹配的行,用poolnew对匹配的行进行替换
sed -e '/pool/c\poolnew' test.properties
tcpdump抓包工具
tcpdump -i any -A tcp port 2003 and host 192.168.46.32 -vvv
参数解释:
-i
: 表示网卡接口,如:eth0
,当设置为any
时,表示任一网卡;-A
: 以ASCII形式显示;tcp port xxx
或udp port xxx
等;host xxx.xxx.xxx.xxx
-vvv
: 多一个v
就表示输出更详细一些;and
:多个判断条件直接的连接符;
nc命令
判断某端口是否打开
nc -zv ip host
示例:
[root@epic-phy-9-21 kubernetes]# kubectl exec epic-mgmt-4172821423-206kj -- nc -zv 172.30.29.13 8008
output:
172.30.29.13 (172.30.29.13:8008) open (当显示类似这条语句,表示该port打开)
telnet命令
判读某端口是否打开
telnet ip port
example:
telnet 192.168.3.42 2121
netstat 命令
查看某个端口是否被占用
netstat -anp | grep 8080
curl
-i
: 包含header-I
: 仅仅包含Header-H
: 请求包含header信息--request
: 指定请求方法,默认是GET,可以是POST、PUT、DELETE等,一般不需要指定-d
: 使用post请求发送指定数据
Get方式请求token,包含header
curl -H "Content-Type:application/x-www-form-urlencoded" http://10.254.9.21:30111/v1/user/oauth/token?grant_type=password\&username=epic\&password=epic1234
POST方式请求token(多个-d
将多个key-value分开)
curl -H "Content-Type:application/x-www-form-urlencoded" -d grant_type=password -d username=epic -d password=epic1234 http://10.254.9.21:30111/v1/user/oauth/token
POST方式请求token(1个-d
传递多个key-value)
curl -H "Content-Type:application/x-www-form-urlencoded" -d "grant_type=password&username=epic&password=epic1234" http://10.254.9.21:30111/v1/user/oauth/token
post方式请求(raw数据,json格式)
curl -H "Content-Type:application/json" -H "Authorization:Bearer 1429a901-9236-40eb-a53c-e6c7ef71fff6" -d '{
"dateformat": "NUMERIC",
"metrics": [
{
"resourceType": "splitter",
"resourceId": "f8021c6606c7494b96d256a7c8951d89",
"metricItem": "splitter_realtime_cpu_avg_util_percent"
}
]
}' --request POST http://192.168.29.222:8008/v2/pools/7b8f0f5e2fbb4d9aa2d5fd55466dsij2/performance/query
【常用命令】Linux相关命令的更多相关文章
- 常用的linux基础命令
常用的linux基础命令 1.ls 显示目录属性 -l:(也可以简写成ll),列表显示权限等属性 -a:显示所有文件包括隐藏文件等 -d:只列出目录本身 2.chgrp 改变档案所属群组 eg:chg ...
- 常用的Linux系统调用命令
常用的Linux系统调用命令 下面一些函数已经过时,被新的更好的函数所代替了(gcc在链接这些函数时会发出警告),但因为兼容的原因还保留着,这些函数将在前面标上“*”号以示区别. 一.进程控制 ...
- [ SHELL编程 ] 编程常用的ORACLE相关命令
本文主要描述shell编程中常用的Oracle相关命令. 1.sqlplus -L/-S参数 sqlplus -L user/password #-L参数表示用户只尝试登录一次, 而不是在出错时再次提 ...
- day 2克隆虚拟机器minimal需要注意的问题和制作本地yum源和常用的Linux的命令
------- 克隆bee2 PS:因为复制机器后,又多了一个网卡eth1.本来只有一个网卡eth0,下面是解决方案. 解决克隆后eth0不见的问题 1.直接修改vi /etc/sysconfig/ ...
- 开发常用Git/Linux/idea命令快捷键总结(持续更新)
在开发过程中,会使用越来越多的命令,或快捷键,来帮助我们提高工作效率.本文记录了我在平时积累的常用命令,分享给大家. git命令 基本命令 set LESSCHARSET=utf-8 --idea T ...
- Django命令行相关命令 以及创建一个空白网页的步骤
django相关命令行命令: django.admin.py是Django的一个用于管理任务的命令行工具,manage.py是对django-admin.py的简单包装,每个Django Projec ...
- linux 常用文本操作相关命令
平时工作经常会对文本进行相关操作,包括读写.替换.统计等等,借此整理和学习一下有关命令. 1. cat 查看文件中的内容, -n 查看时为每一行加编号; -b 和-n类似,只不过对于空白行不编号: 2 ...
- 『学了就忘』Linux文件系统管理 — 58、常用硬盘管理相关命令
目录 1.df命令 2.du命令 3.fsck文件系统修复命令 4.显示磁盘状态dumpe2fs 5.查看文件的详细时间 6.判断文件类型 1.df命令 df命令用于统计分区的占用状况. [root@ ...
- Linux 基础——常用的Linux网络命令
一.学Linux网络命令有什么好处 网络的出现,我们的生活更方便了,处理事情的效率也越来越高,也可以看到全世界文化的差异.同时我们接受新事物的信息越来越来强,新事物的信息也越来越来多.网络对于我们尔等 ...
- 使用配置hadoop中常用的Linux(ubuntu)命令
生成key: $ ssh-keygen -t dsa -P '' -f ~/.ssh/id_dsa $ cat ~/.ssh/id_dsa.pub >> ~/.ssh/authorized ...
随机推荐
- django之admin管理工具
admin组件 admin是django提供的基于web的管理工具 >如何使用: 1.激活管理工具 通常会在生成项目时在urls.py中自动设置好 from django.urls import ...
- Matlab:五点差分方法求解椭圆方程非导数边值问题
差分格式脚本文件: tic; clear clc M=32;%x的步数 N=16;%y的步数 h1=1/M;%x的步长 h2=1/N;%y的步长 x=0:h1:1; y=0:h2:1; u=zeros ...
- 高性能消息中间件——NATS
前 言 这段时间我的主要工作内容是将公司系统中使用的RabbitMQ替换成NATS,而此之前我对Nats一无所知.经过一段时间紧张的学习和开发之后我顺利的完成了任务,并对消息中间件有了更深的了解.在此 ...
- 转载:escape,encodeURI,encodeURIComponent有什么区别?
escape unescape encodeURI decodeURI encodeURIComponent decodeURIComponent 这六个方法功能有关联,如果不清楚每一个的作用,很容易 ...
- 指导手册01:安装Hadoop
指导手册01:安装Hadoop Part 1:安装及配置虚拟机 1.安装Linux. (1)打开VMvirtualBox (2) 控制->新建虚拟机,输入虚拟机名称“marst+学号” 类型: ...
- Oracle启动和归档模式
数据库运行 Oracle数据库的完整启动过程是分步骤完成的,包含以下3个步骤: 启动实例–>加载数据库–>打开数据库 因为Oracle数据库启动过程中不同的阶段可以对数据库进行不同的维护操 ...
- c++结构体的排序
出处:https://blog.csdn.net/weixin_39460667/article/details/82695190 引入头文件 #include<algorithm> 结构 ...
- AFNetworking 3.0简单数据请求get&post
/** *get请求方法 */ - (void)AFNGetUrl { AFHTTPSessionManager *manager = [AFHTTPSessionManager manager]; ...
- 关于attibutedText输出中文字符后的英文和数字进行分开解析的问题
上面的图应该很清楚 具体这个attibutedText 是做什么的就不说了 ,最初我查了资料发现有人和我一样的输出,把一个字符串的中英文分开打印出来是iOS关于UItextVIew和UIlabel的差 ...
- 微信小程序用setData给数组对象赋值
假如现在要给数组marker中的对象属性赋值 data: { marker: [ { latitude: ' ' , longitude: ' ' } ] }, 在方法中的写法为 fetchJ ...