linux常用命令

vim 全局替换

:%s/7001/7003/g

杀死同名的所有进程

ps -ef|grep redis-server|awk '{print $2}'|xargs kill -9

删除除某个文件外的所有文件

ls | grep -v "redis.conf" | xargs rm -rf

查看CPU物理个数

grep 'physical id' /proc/cpuinfo | sort -u

查看每个物理CPU的核数

grep 'core id' /proc/cpuinfo | sort -u | wc -l

如何查看总的逻辑CPU个数

grep 'processor' /proc/cpuinfo | sort -u | wc -l

如何查看CPU的型号

dmidecode -s processor-version

echo -n 不换行输出

echo -n "123" > test

进入脚本文件目录

cd `dirname $0`

jar打包 

jar -cf test.tar test

jar解包

tar -xf test.tar

jar压缩打包

jar -czf test.tar.gz test

jar解包解压

tar -xzf test.tar.gz

*.gz解压

gzip -d test.gz

*.zip 解压

unzip test.zip

递归查找内容

grep -rn 'test'

查看目录大小

du -sh *

文件大小/时间排序降序

ls -lShr
ls -ltr
访问时间 atime: 查看内容
修改时间 mtime: 修改内容
改变时间 ctime: 文件属性,比如权限
删除时间 dtime: 文件被删除的时间

curl 命令发送请求

curl -H "Content-Type: application/json" -X POST -d '{"user_id": "123", "coin":100, "success":1, "msg":"OK!" }' "https://google.com/json"     发送json请求
curl -H "Content-Type: application/x-www-form-urlencoded" -X POST -d 'login=emma&password=123' "https://google.com/urlencoded"   发送x-www-form-urlencoded格式请求
curl -H "Content-Type: multipart/form-data" -F "file=@baikeid"  -X POST "https://google.com/form-data"    上传文件请求
-H参数可以不写

curl -o example.html https://www.example.com
curl -s -o example.html https://www.example.com        不输出错误和进度信息
wget -O example.html https://www.example.com
curl -b 'foo1=bar;foo2=bar2' https://google.com      带cookie
curl -e 'https://google.com?q=example' https://www.example.com             带refer
curl -H 'Referer: https://google.com?q=example' https://www.example.com    带refer

cpu负载

1. w
20:15:09 up 64 days,  2:19,  1 user,  load average: 0.40, 0.42, 0.46
USER     TTY      FROM             LOGIN@   IDLE   JCPU   PCPU WHAT
snswenwe pts/1    10.130.10.100    20:06    5.00s  0.11s  0.01s sshd: snswenwen [priv]
2. uptime
20:15:29 up 64 days,  2:20,  1 user,  load average: 0.29, 0.40, 0.45
3. top
4. vmstat
procs -----------memory---------- ---swap-- -----io---- -system-- ------cpu-----
 r  b  swpd free   buff  cache    si   so    bi  bo in   cs us sy id wa st
 2  0  0    355116 92032 30915272  0    0    48  91  0   0  6  2  93  0  0
解释说明:
--------------------------------------------------------------------------------
procs部分的解释
r 列表示运行和等待cpu时间片的进程数,如果长期大于1,说明cpu不足,需要增加cpu。
b列表示在等待资源的进程数,比如正在等待I/O、或者内存交换等。
--------------------------------------------------------------------------------
cpu部分的解释
us 列显示了用户方式下所花费 CPU 时间的百分比。us的值比较高时,说明用户进程消耗的cpu时间多,但是如果长期大于50%,需要考虑优化用户的程序。
sy 列显示了内核进程所花费的cpu时间的百分比。这里us + sy的参考值为80%,如果us+sy 大于 80%说明可能存在CPU不足。
wa 列显示了等待CPU时间的百分比。这里wa的参考值为5%,如果wa超过5%,说明CPU等待严重
id 列显示了cpu处在空闲状态的时间百分比
--------------------------------------------------------------------------------
system部分的解释 
in 列表示在某一时间间隔中观测到的每秒设备中断数。 
cs列表示每秒产生的上下文切换次数,如当 cs 比磁盘 I/O 和网络信息包速率高得多,都应进行进一步调查。
--------------------------------------------------------------------------------
memory部分的解释 
swpd 切换到内存交换区的内存数量(k表示)。如果swpd的值不为0,或者比较大,比如超过了100m,只要si、so的值长期为0,系统性能还是正常 
free 当前的空闲页面列表中内存数量(k表示) 
buff 作为buffer cache的内存数量,一般对块设备的读写才需要缓冲。 
cache: 作为page cache的内存数量,一般作为文件系统的cache,如果cache较大,说明用到cache的文件较多,如果此时IO中bi比较小,说明文件系统效率比较好。
--------------------------------------------------------------------------------
swap部分的解释 
si 由内存进入内存交换区数量。 
so由内存交换区进入内存数量。
--------------------------------------------------------------------------------
IO部分的解释 
bi 从块设备读入数据的总量(读磁盘)(每秒kb)。 
bo 块设备写入数据的总量(写磁盘)(每秒kb)
--------------------------------------------------------------------------------
5. dstat
----total-cpu-usage---- -dsk/total- -net/total- ---paging-- ---system--
usr sys idl wai hiq siq| read  writ| recv  send|  in   out | int   csw 
  6   2  93   0   0   0| 384k  721k|   0     0 |   0     0 |8229  7974 
  6   1  92   0   0   0|   0     0 |1529k  775k|   0     0 |  11k   13k
6. iostat 1 1  隔1s显示,共1次 -c只显示cpu 
Linux 3.10.0-957.el7.x86_64 (hbhly_SG11_131_118)        10/23/2020      _x86_64_        (8 CPU)

avg-cpu:  %user   %nice %system %iowait  %steal   %idle
           5.59    0.01    1.73    0.01    0.00   92.67

Device:            tps    kB_read/s    kB_wrtn/s    kB_read    kB_wrtn
vda               1.90         2.79        18.29   15429769  101321168
vdb              42.06       381.18       702.78 2111129030 3892260493

解释说明: 
avg-cpu: 总体cpu使用情况统计信息,对于多核cpu,这里为所有cpu的平均值 
%user: 在用户级别运行所使用的CPU的百分比. 
%nice: nice操作所使用的CPU的百分比. 
%sys: 在系统级别(kernel)运行所使用CPU的百分比. 
%iowait: CPU等待硬件I/O时,所占用CPU百分比. 
%idle: CPU空闲时间的百分比.
Device段:各磁盘设备的IO统计信息 
tps: 每秒钟发送到的I/O请求数. 
Blk_read /s: 每秒读取的block数. 
Blk_wrtn/s: 每秒写入的block数. 
Blk_read: 读入的block总数. 
Blk_wrtn: 写入的block总数.

7. iostat -x -k -d 1 
Linux 3.10.0-957.el7.x86_64 (hbhly_SG11_131_118)        10/23/2020      _x86_64_        (8 CPU)

Device:         rrqm/s   wrqm/s     r/s     w/s    rkB/s    wkB/s avgrq-sz avgqu-sz   await r_await w_await  svctm  %util
vda               0.00     2.37    0.17    1.73     2.79    18.29    22.18     0.00    0.34    2.02    0.17   0.08   0.02
vdb               0.00     0.06   38.58    3.48   381.18   702.77    51.54     0.10    3.99    4.07    3.18   0.04   0.16

解释说明: 
rrqm/s: 每秒对该设备的读请求被合并次数,文件系统会对读取同块(block)的请求进行合并 
wrqm/s: 每秒对该设备的写请求被合并次数 
r/s: 每秒完成的读次数 
w/s: 每秒完成的写次数 
rkB/s: 每秒读数据量(kB为单位) 
wkB/s: 每秒写数据量(kB为单位) 
avgrq-sz:平均每次IO操作的数据量(扇区数为单位) 
avgqu-sz: 平均等待处理的IO请求队列长度 
await: 平均每次IO请求等待时间(包括等待时间和处理时间,毫秒为单位) 
svctm: 平均每次IO请求的处理时间(毫秒为单位) 
%util: 采用周期内用于IO操作的时间比率,即IO队列非空的时间比率
如果 %util 接近 100%,说明产生的I/O请求太多,I/O系统已经满负荷,该磁盘可能存在瓶颈。 
idle小于70% IO压力就较大了,一般读取速度有较多的wait。 
同时可以结合vmstat 查看查看b参数(等待资源的进程数)和wa参数(IO等待所占用的CPU时间的百分比,高过30%时IO压力高)

sort命令

数字进行排序,可以使用-n参数
sort num.txt -n

sort排序的时候,可以按字段分割的数据进行排序。-t参数表示行的分割字符,-k表示第几列。当然,可以进行降序排序,-r参数可以实现。下面是对passwd文件,以冒号(:)进行分割,然后对第三列以数字方式进行降序排序。
sort -t ':' -k 3 -nr passwd 

如果文件内容有很多重复的,需要进行去重。sort也是支持的,可以通过-u参数使用
sort -u word.txt

sort test.txt | uniq -d  只显示重复行
sort test.txt | uniq -u  显示文件中不重复的各行

sort a.txt | uniq > aa.txt
sort b.txt | uniq > bb.txt
sort aa.txt bb.txt | sort | uniq -d  交集

sort file1 file2 | uniq     并集
sort file1 file2 file2 | uniq -u  差集  file1有但file2没有的数据
sort file2 file1 file1 | uniq -u  差集  file2有但file1没有的数据

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值