linux常用命令

11/26/2015来源:Linux教程人气:1159

1. 可以使用一下命令查使用内存最多的10个进程    
ps -aux | sort -k4nr | head -n 10
 
2. 可以使用一下命令查使用CPU最多的10个进程    
ps -aux | sort -k3nr | head -n 10
 
3. 更改文件用户组和用户
chown -r admin.admin /xxx
 
4. 更改用户权限
chmod +x xxx
 
5. 查看端口是否被占用
netstat -an | grep 端口号
 
7. 用jps查看java进程id
jstack  <pid>
 
8. 查看磁盘占用(du查看目录大小,df查看磁盘使用情况)
df -h        
du -sh ./*
 
9. nginx日志切割
#!/bin/bash
## 零点执行该脚本
## Nginx 日志文件所在的目录
LOGS_PATH1=/export/servers/nginx/logs/x.ppad5.wabp.cn
LOGS_PATH2=/export/servers/nginx/logs/c.ppad5.wabp.cn
## 获取昨天的 yyyy-MM-dd
YESTERDAY=$(date -d "yesterday" +%Y-%m-%d)
## 移动文件
logs_name1=(x.ppad5.wabp.cn_np x.ppad5.wabp.cn_pv x.ppad5.wabp.cn_access x.ppad5.wabp.cn_error)
logs_name2=(c.ppad5.wabp.cn_nc c.ppad5.wabp.cn_access c.ppad5.wabp.cn_error)
for((i=0;i<${#logs_name1[@]};i++));do mv ${LOGS_PATH1}/${logs_name1[i]}.log ${LOGS_PATH1}/${logs_name1[i]}_${YESTERDAY}.log;done
for((i=0;i<${#logs_name2[@]};i++));do mv ${LOGS_PATH2}/${logs_name2[i]}.log ${LOGS_PATH2}/${logs_name2[i]}_${YESTERDAY}.log;done
## 向 Nginx 主进程发送 USR1 信号。USR1 信号是重新打开日志文件
kill -USR1 $(cat /export/servers/nginx/run/nginx.pid)