本文档用于记录易忘的linux命令,方便日后查询,不定期更新
网络
ifconfig //查看IP
cd /etc/sysconfig/network-scripts //网络配置文件位置
vi ifcfg-xxx //根据使用的网卡修改对应的IP
systemctl restart network //重启网络服务
yum install tcpdump //安装抓包工具
tcpdump -i eth0 udp port 694 -n //指定网卡,协议,端口进行抓包
#-c指定抓包数量 -t 不显示时间戳 -w指定存放路径
tcpdump -i eth0 port 8088 -c 3 -t -w /tmp/tcpdump.pcap
#两台主机之间通信抓包
tcpdump host 192.168.0.204 and 192.168.0.205
#src指定来源
tcpdump -i eth0 src host 192.168.0.235
#dst指定目标地址,net指定网段
tcpdump -i eth0 dst net 192.168.0.0/24
nload命令
该工具用来监控网络流量
安装nload工具
yum install nload
监控网卡eth0的网络流量
nload eth0
运行中按F2可以修改参数
日志 tail命令
命令 | 解释 |
tail error.log | 打印文件最后10行 |
tail -f error.log | 打印文件最后10行,并监测文件,跟踪打印 |
tail -20f error.log | 打印文件最后20行,并监测文件,跟踪打印 |
tail -n 100 error.log | 打印文件最后100行 |
tail -n 1000 logfile | grep key -A 10 | 在文件logfile最后1000条记录中查找关键字key的记录以及后面10条 |
tail -n 1000 logfile | grep key -B 10 | 在文件logfile最后1000条记录中查找关键字key的记录以及其前面10条 |
tail -n 1000 logfile | grep key --color | 在文件logfile最后1000条记录中查找关键字key的记录,并高亮显示key |
tail -f logfile | grep key --color | 查看文件logfile,当日志文件新增内容中出现关键字key的记录时,高亮显示key |
.service文件
常用位置
系统单元目录 | 优先级 | 单元 |
---|---|---|
/lib/systemd/system | 高 | 本地配置的系统单元 |
/run/systemd/system | 中 | 运行时配置的系统单元 |
/usr/lib/systemd/system | 低 | 软件包安装的系统单元 |
修改.service文件后,重新加载命令
systemctl daemon-reload
设置开机自启动
systemctl enable nginx.conf
VI 相关
注意:命令模式下,大小写敏感
删除光标行(命令模式下)
dd
撤销上一次操作(命令模式下)
u
复制光标所在行(命令模式下)
yy
粘贴(命令模式下)
p
跳转到文件尾
G
防火墙
查看防火墙状态
systemctl status firewalld
启动防火墙
systemctl start firewalld
关闭防火墙
systemctl stop firewalld
禁用防火墙
systemctl disable firewalld
启用防火墙
systemctl enable firewalld
端口进程相关
查看指定端口使用状态
lsof -i:8080
查询特定进程是否运行或进程ID
ps -aux | grep nginx
时区
查看时区
timedatectl
UTC:整个地球分为二十四时区,每个时区都有自己的本地时间,在国际无线电通信场合,为了统一起见,使用一个统一的时间,称为通用协调时(UTC:Universal Time Coordinated)。
GMT:格林威治标准时间 (Greenwich Mean Time)指位于英国伦敦郊区的皇家格林尼治天文台的标准时间,因为本初子午线被定义在通过那里的经线(UTC与GMT时间基本相同)。
CST:中国标准时间 (China Standard Time)
RTC(Real-Time Clock)或CMOS时间:硬件时间,一般在主板上靠电池供电,服务器断电后也会继续运行。仅保存日期时间数值,无法保存时区和夏令时设置。
DST:夏令时(Daylight Saving Time) 指在夏天太阳升起的比较早时,将时间拨快一小时,以提早日光的使用(中国不使用)。
查看时区列表
timedatectl list-timezones
设置特定时区
timedatectl set-timezone Asia/Shanghai
系统相关
查看内核版本
uname -r
显示cpu相关信息
lscpu
查看centos 版本
cat /etc/centos-release
查看内存信息
free -m //以MB进行查看
top 命令后按m //可以按照内存利用率大小排序,可以查看各进程的内存使用情况
sar -r //%memused表示内存利用率
cat /etc/shells //查看所有解释器
echo $SHELL //查看默认解释器
ls -l /bin/ | grep bash //查看sh解释器与bash的关系
atop 系统监控工具
安装 yum install atop
默认视图 按键g
内存视图 按键m
命令视图 案件c
解压缩
tar命令
tar 命令主要用于 *.tar *.tar.gz *.tar.bz2 格式
参数 | 作用 |
-c | 创建压缩文件 |
-x | 解开压缩文件 |
-t | 查看压缩包内有哪些文件 |
-r | 向压缩归档末尾追加文件 |
-u | 更新压缩包中的文件 |
-z | 用Gzip压缩或解压 |
-j | 用bzip2压缩或解压 |
-v | 显示压缩、解压过程 |
-f | 目标文件名(-f应放在参数末位,立即接文档名) |
-P | 保留原始权限与属性 |
-p | 使用绝对路径来压缩 |
-C | 解压到指定目录 |
举例:
命令 | 目的 |
tar -tf *.tar.gz | 查看文件(不解压) |
tar -cvf jpg.tar ./1.jpg | 压缩当前目录下的1.png到jpg.tar |
tar -xvf *.tar | 解压tar包 |
tar -xzvf *.tar.gz | 解压tar.gz包 |
tar -xjvf *.tar.bz2 | 解压tar.bz2包 |
tar -czvf camera.tar.gz ./camera | 压缩camera目录下的所有文件 |
uzip/zip
安装命令
yum install -y unzip zip
压缩当前目录下的abc文件夹和123.txt到abc123.zip中
zip -r abc123.zip abc 123.txt
解压到当前目录
unzip test.zip
解压到指定目录
unzip test.zip -d /temp
docker
打印正在运行的所有容器
docker ps
进入指定的容器内部
docker exec -it 容器ID bash
mysql
查询数据库当前连接数
show status like 'threads_connected';
显示所有当前连接的
show PROCESSLIST;
代理配置
临时代理
只在当前终端生效,可用于测试
export http_proxy="http://127.0.0.1:8080"
全局代理
编辑文件/etc/profile
vi /etc/profile
文件末尾添加
export http_proxy="http://127.0.0.1:8080"
生效文件
source /etc/profile
YES
yes 重复输出一个字符串,直到被杀死。
yes 不带任何参数运行时默认输出的字符串是 y。
yes hello //将持续打印hello.直到用户终止
yes | cp a.txt b.txt dir //拷贝文件询问时,自动yes
LESS
less命令是一个查看文件的命令,非常适合查看大文件
上下箭头 | 向上,向下滚动查看内容 |
空格 | 向下翻页 |
b | 向上翻页 |
g | 跳到文件开头 |
G | 跳到文件末尾 |
q | 退出 |
TEE
tee用于将数据重定向到文件,另一方面还可以提供一份重定向数据的副本作为后续命令的stdin。简单的说就是把数据重定向到给定文件和屏幕上。
-a | 向文件重定向时使用追加模式 |
-i | 忽略中断信号 |
常用使用方式
ls -l | tee 1.txt //打印到屏幕的同时将数据保存到文件
tee 1.txt 2.txt //将用户输入的数据同时保存到文件1.txt 2.txt中