linux系统命令

shell命令
sh -x 脚本路口 参数 
># 进入调试模式
https://www.bilibili.com/video/BV1ep4y1s7Eb?p=30
find命令
  • 基本参数和用法
-name
-iname      #忽略大小写
-amin n:    #在过去n分钟内被读取过 
-cmin n:    #修改过
-atime n:   
-ctime n:   #+n表示在过去n天前被修改过。-n 代表n天之内,n 代表第n天
-empty      #空的文件
-ipath      #忽略大小写,匹配路径
-size       
-type       #文件类型
d f         #目录,文件
访问时间(-atime/天,-amin/分钟):用户最近一次访问时间。
修改时间(-mtime/天,-mmin/分钟):文件最后一次修改时间
变化时间(-ctime/天,-cmin/分钟):文件数据元(例如权限等)最后一次修改时间。
# find /var/log -type f -mtime +7 -ok rm {} \;  
# 7 日以前的普通文件,并在删除之前询问它们

find ... -exec rm {} \; 
  • 记一次find正则匹配:匹配目录下长度为19的数字目录名称
file="/opt/zmm/file"
files=$(find $file -regextype "posix-egrep" -regex '\/opt\/zmm\/file\/[0-9]{19}')
  • 对目录或文件取反匹配

Linux下清理内存和cache缓存方法
网站:
https://www.cnblogs.com/the-tops/p/8798605.html
hostname
HOSTNAME -I #取出所有IP
du详解-常用参数详解
> du -sh /opt/                #查看单个文件/文件目录的大小
> du -a -x -h --max-depth=1 / |sort -hr    #查看根目录下每个文件目录的大小,并按从大到小排序
> awk '{print $1}' access.log |sort |uniq -c |sort -nr -k1
> du -sh /* | sort -rh        #安装文件大小排序

> du -s   #仅显示目录或文件的总计数值
> du -h   #以K,M,G为单位,提供可读性
> du -a   #显示所有目录或文件的大小
> du -x   #跳过不同的文件系统目录
> --max-depth #表示要查看几层目录

> -m    #以MB为单位输出
> -k    #以KB为单位输出

sort详解-常见参数详解
> sort filename #输出时默认按ASCII正向排序
> sort -u #输出时去除重复行
> sort -r #反向显示
> sort -h #显示(k,m,G)
> sort -n #以数值大小显示
> sort -k #指定列数,以哪个区间 (field) 来进行排序
> sort -t #指定间隔符     
> sort -o #重定向到文件。例如 sort -n -r a.txt -o b.txt
> sort -c #检查文件是否已经按照顺序排序,如未排序,会提示从哪一行开始乱序
> uniq -c #显示该行重复的次数

-b:忽略每行前面开始的空格字符,空格数量不固定时,该选项几乎是必须要使用的("-n"选项隐含该选项,测试发现都隐含)
-c:检查文件是否已经按照顺序排序,如未排序,会提示从哪一行开始乱序
-C:类似于"-c",只不过不输出任何诊断信息。可以通过退出状态码1判断出文件未排序
-d:只处理英文字母、数字及空格,忽略其他的字符
-f:将小写字母视为大写字母
-h:使用易读性数字(例如:2K、1G)
-i:除了040至176之间的ASCII字符外(八进制0-177),忽略其他的字符(忽略无法打印的字符如退格/换页键/回车)
-k:以哪个区间 (field) 来进行排序
-m:将几个排序好的文件进行合并,只是单纯合并,不做排序
-M:将前面3个字母依照月份的缩写进行排序
-n:依照数值的大小排序
-o  <输出文件>:将排序后的结果存入指定的文件
-r:降序
-u:忽略相同行
-t  <分隔字符>:指定分隔符,默认的分隔符为空白字符和非空白字符之间的空字符
> #linux系统使用CPU率前10的应用
ps aux|head -1;ps aux|grep -v PID|sort -rn -k +3|head

> #linux系统使用内存前10的应用
ps aux|head -1;ps aux|grep -v PID|sort -rn -k +4|head -10
system
systemctl -t target     #查看
模式的控制:
    纯文本字符模式:multi-user.target
    图形模式:graphical.target
当前模式切换:
    systemctl isolate multi-user.target
修改默认模式:
    systemctl get-default                   #查看默认模式
    syetemctl set-default graphical.target  #修改为图形
    reboot
关于DNS域名指向问题
在网卡配置文件中添加:PEERDNS=no 这个命令,重启网卡,/etc/resolv.conf文件不会被重写

如果上述方法不成功则执行如下方法
可以使用chattr +i /etc/resolv.conf 方法解决
lsattr -a # 查看chattr执行的结果
route
traceroute与tracert
Linux系统初始化安装
yum -y install wget net-tools nfs-utils lrzsz gcc gcc-c++ make cmake libxml2-devel \
openssl-devel curl curl-devel unzip sudo ntp libaio-devel wget vim ncurses-devel autoconf \
automake zlib-devel python-devel epel-release openssh-server socat ipvsadm conntrack ntpdate \
yum-utils device-mapper-persistent-date lvm2 lsof telnet
rpm
rpm -q mysql-community-client 
rpm -qa |grep mysql
rpm -qi mysql-community-client 
rpm -ql mysql-community-client 
rpm -qf `which mysql`
yum
yum list kubelet --showduplicates |sort -r      #展示版本列表
ssh-keygen
ssh-keygen -N '' 回车
系统负载
]# uptime
 01:53:16 up 6 days, 20:33,  1 user,  load average: 0.00, 0.01, 0.05

# 当前时间
# 系统已运行时间
# 当前在线用户
# 系统平均负载:1分钟,5分钟,15分钟

~]# cat /proc/loadavg 
0.00 0.01 0.05 1/158 17959
前3个表示平均进程
1/158   # 分母表示系统总进程数,分子表示正在运行的进程数;
17959   # 表示最近运行的进程ID

何为系统负载
定义:在特定时间间隔内运行队列中的平均进程数。
需满足一下条件:
1:没有在等待I/O操作的结果
2:没有进入主动等待状态(也就是没有调用'wait'3:没有被停止:(例如:等待终止)

一般来书,每个CPU内核当前活动进程数不大于3,则系统运行良好。如果是4核,进程数小于12表示负载正常
exec
执行一个命令后退出终端
exec ls、exec cd
Linux时间同步
ntpdate -u ntp.api.bz
ntpdate -b ntp.aliyun.com

# 设置时区
timedatectl set-timezone "Asia/Shanghai"

# 查看当前的时区状态
timedatectl status 
timedatectl

# 查看时区
date -R

https://blog.csdn.net/z13615480737/article/details/82776167
https://www.cnblogs.com/suiyueshentou/p/7798340.html
  • ps
ps -P pid       #查看pid进程的详细信息
  • stress 压测
yum -y install stress
-c --cpu N  #产生N个进程,每个进程反复不停的计算随机数的平方根
-i --io N   #产生N个进程,每个进程反复调用sync()将内存上的内容写到硬盘上
-t --timeout N #在n秒后接受程序
sysstat 系统监控
yum -y install sysstat

mpstat #实时系统监控工具
-P {cpu | ALL}
mpstat -P ALL 5
# 每5s检查一次所有cpu,查看是用户还是系统导致的负载过高。
mpstat -P ALL 5 2
表示每5秒产生一个报告,总共产生2个

pidstat #进程监控
pidstat -u 5 1
# 每5s输出一组数据,最后一组数据是平均值,查看是哪个程序导致的负载过高
iperf 网络测速
  • udp模式下
服务端:
iperf -u -s

客户端:
iperf -u -c server-ip  -b 100M -t 60

-u:udp协议
-b:udp模式下,单位bits/sec,默认为1Mb/s,设置每秒的带宽
-t:设置传输的总时间,iperf在指定时间内,重复的发送指定长度的数据包,默认为10秒钟。
-P:客户端向服务端发起的线程总数
-d:运行双测试模式。这将使服务器端反向连接到客户端,使用-L 参数中指定的端口
  • tcp模式下
服务端:
iperf -s

客户端:
iperf -c server-ip -P 30 -t 60 -i 1
iperf -c server-ip -d -t 60 

-i n: 设置每次报告之间的时间间隔,单位为秒

来自: http://lnmp.ailinux.net/iperf
iftop 查看流量流入流出信息
  • watch more /proc/net/dev #使用watch查看网卡流量
TX:发送流量
RX:接收流量
cum:总流量
peak:流量峰值
rates:分别表示2s,10s,40s的平均流量

常用参数:
iftop -i ens192 -n -P -B
-n :使host信息默认直接都显示IP
-P :使host信息及端口信息默认都显示
-B :显示bytes(KB)默认为bits

gperf

gperf

wget


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值