linux常用操作

grep查找文件中的关键字

# 从以sql结尾的文件中找 iu
grep 'iu' *.sql
# 匹配多个关键字
grep -E "test|update" test.log
# 匹配多个关键字,查看之后的3行
grep -A 3 -E "test|update" test.log
# 匹配多个关键字,查看前后的3行
grep -C 3 -E "test|update" test.log
# 显示红色 
grep -C 3 -E "test|update" test.log --color
# 同时查包括这两个关键字的行
grep "apple" file.txt | grep "banana"

ls查看文件

# 查看所有名字带有test的文件
ls | grep 'test'

统计文件中出现login的次数

grep -o "login" run.log | wc -l

查看磁盘使用情况

# 显示当前目录下每个文件/文件夹的大小【不涉及子目录】
du -sh *
# 显示磁盘的使用情况
df -lh 
# 只显示当前目录下一级子目录的大小 
du -h --max-depth=1


# 磁盘满了可以清理/home下面的各种文件,/var /tmp不属于/dev/mapper的计算范围

# 如果清理后依然爆满,可能是文件句柄被占用没有释放,可以重启应用。比如nohup文件直接被删掉了,但应用没有重启。一般推荐通过以下方法清空文件

cat /dev/null > filename  

回到上一个文件夹

cd -

判断端口是否被占用

# 判断端口是否被占用
lsof -i:6379

# 查看当前所有tcp端口
netstat -ntlp

# 查看所有80端口使用情况
netstat -ntulp | grep 80

# 查看所有3306端口使用情况
netstat -an | grep 3306

# 查看当前所有监听端口
netstat -nlp | grep LISTEN 

curl 测试接口

# POST 提交 JSON 数据
 curl -X POST -H "Content-Type: application/json"  -H "Authorization: Bearer 写token" -d '{"username":"hello", "password":"123456"}' http://localhost/login

判断网络是否通畅

# 测试端口是否开放
telnet ip port

# 测试目标机器的连通性和域名解析
ping ip/域名

查看进程堆栈

# 把整个进程的堆栈都打印出来
jstack -l 进程ID(进程用服务的)
# 存储到某个文件里
jstack -l pid > jstack20250625.txt

查找可执行文件

which redis-server
whereis redis-server

find / -name redis

chown权限改造

# 给当前目录所有文件把所有人和属组都转给dgadmin 
chown -R dgadmin:dgadmin *

  

Linux定时任务

# 查看当前定时任务
crontab -l

# 修改定时任务
crontab -e

# 比如:添加每天3点跑的清理日志的任务
* 3 * * * /home/dgadmin/clear_old_logs.sh

# 注意要给clear_old_logs.sh赋权限
chmod 777 clear.sh

# 执行的日志文件可在以下目录中被看到
/var/log/cron 

  

 

posted @ 2025-10-10 14:01  吾辈当奋斗-生生不息  阅读(4)  评论(0)    收藏  举报