文章目录
tail(从尾部查看日志)
# 从尾部查看,默认查看倒数 10 行,这里 f 表示会不断刷新
tail -f [file]
# 从尾部查看,查看倒数 20 行数据,n 表示多少行,且不断刷新
tail -fn -20 [file]
# 倒数 10 行
tail -n -10 [file]
# 从 100 行到末尾
tail -n +100 [file]
head(从头部查看日志)
# 从头部查看,默认查看正数 10 行
head [file]
# 从头部查看,查看正数 20 行数据,n 表示多少行
head -n +20 [file]
# 从头部查看,假如总共 120 行,现在要查看正数 20 行,下面方式也是可行的,想想为啥
head -n -100 [file]
less 和 more(查看日志)
# 查看日志支持上下滚屏
less [file]
# 查看日志仅能向前不能向后
more [file]
sort(排序)
与管道结合使用,与 uniq 命令结合使用,注意加 n 表示数值大小排序,不加表示字符串排序
# 查看日志正序排序(数字识别为字符串)
sort
# 查看日志倒序排序(数字识别为字符串)
sort -r
# 查看日志正序排序(按照数字大小)
sort -n
# 查看日志倒序排序(按照数字大小)
sort -nr
# -f 表示忽略大小写
sort -f
# -t 指出分隔符,-k 用第几列来排序
sort -t 分隔符 -k 2n
uniq(Uniq 去重)
去重命令,常与 sort 命令结合使用,uniq 只能去除相邻的重复的行!这个一定要注意了,所以一般先 sort 在 uniq 去重!!!
# 删除文件中重复的行并呈现出来,c 表示重复出现的次数,会在行前显示
uniq -c [file]
# 仅显示重复出现的行
uniq -d [file]
# 忽略大小写
uniq -i [file]
diff(Differ 比较不同)
比较不同
# 比较两个文件的不同,忽略大小写
diff -i [file1] [file2]
find(Find 查找目录以及文件)
# find [目录] options,找文件
find /var -name "*.log"
ps(Process Status 进程状态)
ps 命令的关注点在于进程,主要是本机的进程,更多关注性能,资源使用情况等
# UID PID PPID C STIME TTY TIME CMD
# 用户ID 进程ID 父进程ID CPU占用率 开始时间 终端设备 此进程运行的总时间 命令名
# root 1 0 0 Jan10 ? 00:00:01 某一命令名
ps -ef
# 查看 java 相关的进程
ps -ef | grep java
# ps 查看进程,cpu,MEM 等信息
USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND
用户 进程号 cpu占用率 。。。 。。。 。。。 。。。 。。。 开始时间 详细时间 命令
root 1 0.0 0.0 0 0 ? Ss 2018 0:00
ps -aux
kill(杀死进程)
杀死进程
有的可能杀死不了的可以用 -9 来实现,这两种主要是向进程发送了不同的信号,-9 发送的信号可以彻底杀死进程,通过 kill -l 来查看有哪些信号,会显示出 64 种
# 杀死进程
kill -l
# 杀死进程
kill [PID]
# 彻底杀死进程
kill -9 [PID]
netstat(Network Status 网络状态)
主要关注的是网络状态,对内网外网活动的观察,更多的是注意到安全
-nlpt
可以查看内网 ip,外网 ip,端口等信息,n 表示直接使用 ip 地址而不使用域名服务器,l 表示显示监控中服务器的 Socket,即 tcp 连接是在监听状态的情况 LISTEN,p 表示正在使用的程序识别码和程序名称,t 表示显示 TCP 传输协议的连线情况
并且要注意的是,-nlpt
后可以加上数字可以表示隔多少秒再执行一次这个命令,为的就是更新数据
# 查看进程
# Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program name
# TCP还是UDP 接收请求的个数 发送请求的个数 内网地址 外网地址 状态 进程号/进程名
# tcp 0 0 127.0.0.1:25 0.0.0.0:* LISTEN 1592/master
netstat -nlpt
# u 表示 UDP
netstat -nlpu
# 过滤出 80 端口信息,可以查看端口是否被占用
netstat -nlp | grep 80
查看硬件状况
查看 cpu,内存等占用情况
# 查看 cpu 状况
cat /proc/cpuinfo
# 查看内存信息
cat /proc/meminfo
# 查看硬盘信息,列出设备分区表
fdisk -l
# 查看磁盘信息
# 文件系统 容量 已用 可用 已用% 挂载点
df -f
# 查看型号
dmidecode | grep 'Product Name'
curl(CommandLine URL 命令行 URL)
强大的 http 命令行工具
# 可以直接查看网页
curl www.baidu.com
其他
########## top ##########
# 查看 cpu 占用率和内存占用率较高的进程,动态过程
top
########## wc ##########
# 统计行数,词数,字节数
wc file
# 统计行数
wc -l file
# 统计字数
wc -w file
# 统计字符
wc -m file
########## seq ##########
# seq 序列,产生 1-100 的整数
seq 1 100
# 产生 1-100 增量为 2 的整数
seq 1 2 100
########## test ##########
# 直接使用不产生真假的输出,需要在 shell 中在判断后接上此表达式
test 1 -eq 1
########## du ##########
# 显示文件大小,h 表示会以 K,M,G 来显示
du -h file