开发中必知必会的常用Linux命令
导语
在日常的开发中,Linux操作系统是经常要接触到的,所以关于Linux的常用命令,我们一定要熟悉,在这里,我把平时经常用到的命令总结了一下。
1,基本命令(熟记于心)
# 切换目录
cd 目录
# 退出到上一级
cd ..
# 输出当前绝对路径
pwd
# 列出当前目录下所有的文件或目录
ls
# 创建文件目录
mkdir
# [强制]杀死进程
kill [-9]
# -r递归复制
cp [-r] a b
# 移动或者重命名
mv a b
# 删除文件 小心使用rm -rf /
rm [-rf]
# 命令向网络主机发送ICMP回传请求,简单说是两台机器网络是否连通
ping ip地址
# 显示当前所有网络状态
ifconfig
# 创建文件或者更新文件时间
touch
# 显示文件属性
file
# 显示历史操作命令
history
2,文件查找
# 根据文件名查找
find /path -name 'aa.txt' # 查找path目录下文件名为aa.txt文件
# 根据文件大小查找
find /path -size +20M # 查找path目录下大于20M的文件
# 查找当前目录下以 .txt 结尾的文件
ls -l | grep '.txt'
# 递归查询以 .txt 结尾并且包含 aa 关键字
find . -name '.txt' | xargs grep 'aa'
# 从多个文件中搜索 'aaa'
grep 'aaa' a.txt b.txt
3,查看本机 XXX 进程的相关信息
ps aux | grep XXX
4,查看正在监听的端口
netstat -ntpl (lntup / nltp)
5,显示各个进程对内存的使用情况,从大到小排序
ps aux --sort -rss
6,查看3306端口在和谁通信
netstat -na | grep 3306
7,查看进程 XXX 占用的端口
netstat -nap | grep XXX
netstat -lnp | grep XXX
8,查看端口2181的运行情况
lsof -i:2181
# 查看应用文件位置
lsof -p 进程id
9,查看进程
ps 显示进程快照
ps -ef | grep 应用名 # 最常用
10,查看文件大小
ls -lnt
11,监控内存
top -d 1 # 然后使用 shift+m 排列内存
free -g [m] # 查看内存使用
12,查看硬盘信息
df -lh
du /home/flume # 查看该目录占用空间大小
13,监控网络状态
# 显示整个系统目前的网络情况。例如目前的连接、数据包传递数据、或是路由表内容
netstat -anp | more
# 查看网络占用端口号
netstat -n |grep 9080| awk '/^tcp/ {++S[$NF]} END {for(a in S) print a, S[a]}'
# 查看apache当前并发访问数
netstat -an | grep ESTABLISHED | wc -l
14,CPU监控
# 监控cpu (单位:秒)
vmstat 1
# 监控进程
top
# 查看cpu位数
getconf LONG_BIT
# 查看内存
free -g |grep "Mem" | awk '{print $2}'
# 查看CPU核数
cat /proc/cpuinfo |grep -c processor
15,文件解压缩
# 压缩文件
tar -czf tar文件名 目录
tar -czf aa.tar.gz /home
# 列出压缩文件列表
tar -tzf tar文件名
tar -tzf aa.tar.gz
# 解压文件
tar -xvzf tar文件名
tar -xvzf aa.tar.gz
16,查头观尾看动态
# 查看日志中的头30行
head -n 30 aaa.log
# 查看日志中的后30行
tail -n 30 aaa.log
# 查看全部日志、基本用不到
cat aaa.log
# 查看动态滚动日志
tail -f aaa.log
17,系统文件
# 修改IP域名映射
vim /etc/hosts
# 修改环境变量
vim /etc/profile
18,查看活跃的 nginx 进程
netstat -anp | grep nginx | grep ^tcp | wc -l
19,查看端口连通
telnet ip port
20,按大小分隔日志文件(20M)
split -b 20M aaa.log
小结
本篇文章简单介绍了开发中必知必会的常用Linux命令,由于纯手打,难免会有纰漏,如果发现错误的地方,请第一时间告诉我,这将是我进步的一个很重要的环节。