前言
计算机系统可分为cpu、内存、外存(磁盘等)、外设(网卡等)四大部分,本文主要对这四大块的性能监控的linux命令做了简要小结。
1.Linux基础命令
1.1 检索命令:grep,find
grep —> 搜索关键词
find —> 查找文件
grep main ./test.c -C 3 -n -i
-C 3:打印前后三行
-n:显示行号
-i:忽略关键词的大小写
grep main test/ -r
-r:递归查找
grep main test.c -v
-v, --invert-match 反向查找,选中不匹配的行
grep retu* *.c
支持模糊查找
find . -name test.c
find . -iname test.c
-iname:忽略大小写
find /mnt -type d
find /mnt -type f
按文件类型查找
find /etc -maxdepth 1 -name passwd
mindepth/maxdepth:最小/最大查找层数
find /mnt -size 20K
查找大小在20K左右的文件
find /mnt -size +20K
find /mnt -size -20K
find /mnt -cmin 10
查找在10分钟左右修改的文件
find /mnt -cmin +10
find /mnt -cmin -10
find /mnt -ctime 10
10天左右
find /mnt -ctime +10
find /mnt -ctime +10
1.2 提取信息命令:sed,awk,head和tail,wc
head和tail:
wc test.c
显示test.c文件的行数、单词数、字节数
sed —> 针对行的批量操作
sed -n '5 p' sed1.cpp
显示1.cpp的第5行
sed -n '2,5 p' sed1.cpp
显示第2~第5行
sed -n '1~2 p' sed1.cpp
显示打印奇数行
sed -n '2~2 p' sed1.cpp
只显示偶数行
sed -n '/void/,+3 p' sed1.cpp
显示void的开头的行,和后三行
'sed -n '/main/,/return/ p' sed1.cpp
显示main开头的行,return结束的行,和之间的数据
sed '2,5 d' sed2.cpp
delete时去掉-n参数
sed -i '2,5 d' sed2.cpp
-i 使用此参数后,所有改动将在原文件上执行
sed -n '2,5 w output.txt' sed2.cpp
sed 's/int/double/g' sed3.cpp
显示 sed3.cpp的所有int替换成double后的内容
s:substitute 替换模式
g:globle
sed -i 's/int/double/g' sed3.cpp
sed3.cpp原文件,所有int替换成double
awk —> 针对列的批量操作
echo i love u | awk '{print $3 $2 $1}'
默认空格为分隔符
结果:ulovei
echo 192.168.0.1 | awk -F "." '{print $2}'
修改分隔符为.
结果:168
cat score.txt
结果:
tom 60 60 60
kitty 90 95 87
jack 72 84 99
awk '{if $2>=90 print $0}' score.txt
第0列就是第1行
结果:
kitty 90 95 87
awk '{if $2>=90 print $1,"优秀";else print $1,"良好"}' score.txt
结果:
tom 良好
kitty 优秀
jack 良好