【常用命令】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 ...
随机推荐
- wrk 使用记录及踩过的坑
wrk是什么?https://github.com/wg/wrk wrk 是一个非常小巧高效的开源性能测试工具,支持lua脚本来创建复杂的测试场景.wrk 的一个很好的特性就是能用很少的线程压出很大的 ...
- Git:一个简单示例
初始状态:两个分支master/dev都只有一个文件readme.txt 待解决问题:在master分支新增文件,并且修改readme.txt文件,将上述操作同步至远程master分支,最后同步到de ...
- .net core部署到Ubuntu
1.使用vs2017创建Asp.net Core Web应用程序,选择ubuntu中安装的.net core版本,这里选择2.1版本: 2.右键发布该项目,选择文件系统发布: 3.在ubuntu中安装 ...
- 关于c#连接数据库的代码
using System;using System.Collections.Generic;using System.Data;using System.Data.SQLite;using Syste ...
- labeled statement:标签语句
foo: for (var i=0; i< 5; i++) { for (var j=0; j<5; j++) { if ( i == j ) { // 跳到 foo 的下一个循环 // ...
- Aop理解 ioc理解
AOP 把 [核心代码]和[非核心代码]分离 提高开发的效率 java设计模式: https://www.cnblogs.com/malihe/p/6891920.html N+1就是: 1:一条查询 ...
- pip 安装 nexmo
pip install nexmo报错 是因为缺少 libffi-devel 需要 yum install libffi-devel 然后再执行 pip install nexmo 即可成功
- lua调用方法错误
self.sendMsg(json.encode(info),) self:sendMsg(json.encode(info),) 两个符号就差了一个点,引发的问题确实app崩溃,在这个方法中传的参数 ...
- ubuntu 网络配置
检查网络配置命令:ifconfig 一.通过配置文件配置 新手没怎么用过Ubuntu,所以走了不少弯路,网上找了很多方法,大都没对我起到帮助作用,所以把自己的配置方法写一写. Ubuntu上连了两块网 ...
- 蓝牙协议分析(10)_BLE安全机制之LE Encryption
1. 前言 前面文章介绍了两种BLE的安全机制:白名单[4]和LL privacy[3].说实话,在这危机四伏的年代,这两种“捂着脸讲话(其它人不知道是谁在讲话,因而不能插话.不能假传圣旨,但讲话的内 ...