linux系统管理的常用shell命令
作者 佚名技术
来源 Linux系统
浏览
发布时间 2012-04-07
参考文档:http://bbs.linuxtone.org/thread-16-1-1.html http://yunhaozou.org/perl-shell/162.html 1.显示消耗内存/CPU最多的10个进程 ps aux | sort -nk 4 | tail ps aux | sort -nk 3 | tail 2.查看进程按内存从大到小排列 ps -e -o "%C : %p : %z : %a"|sort -k5 -nr 3.按cpu利用率从大到小排列 ps -e -o "%C : %p : %z : %a"|sort -nr 3.查看Apache的并发请求数及其TCP连接状态 netstat -n | awk ‘/^tcp/ { S[$NF]} END {for(a in S) print a, S[a]}’ 4. 查找占用磁盘IO最多的进程 wget -c http://linux.web.psi.ch/dist/scientific/5/gfa/all/dstat-0.6.7-1.rf.noarch.rpm dstat -M topio -d -M topbio 5.找出自己最常用的10条命令及使用次数(或求访问最多的ip数) sed -e ‘s/| /n/g’ ~/.bash_history |cut -d ‘ ‘ -f 1 | sort | uniq -c | sort -nr | head 6.日志中第10个字段表示连接时间,求平均连接时间 cat access_log |grep “connect cbp” |awk ‘BEGIN{sum=0;count=0;}{sum =$10;count ;}END{printf(“sum=%d,count=%d,avg=%fn”,sum,count, sum/count)}’ 7.lsof命令 lsof abc.txt 显示开启文件abc.txt的进程 lsof -i :22 知道22端口现在运行什么程序 lsof -c abc 显示abc进程现在打开的文件 lsof -p 12 看进程号为12的进程打开了哪些文件 8.rsync命令(要求只同步某天的压缩文件,远程目录保持与本地目录一致) /usr/bin/rsync -azvR –password-file=/etc/rsync.secrets `find . -name “*$yesterday.gz” -type f ` storage@192.168.2.23::logbackup/13.21/ 9.把目录下*.sh文件改名为*.SH find . -name “*.sh” | sed ’s/(.*).sh/mv 1.SH/’ |sh find . -name “*.sh” | sed ’s/(.*).sh/mv & 1.SH/’|sh (跟上面那个效果一样) 10.ssh执行远程的程序,并在本地显示 ssh -n -l zouyunhao 192.168.2.14 “ls -al /home/zouyunhao” 11.shell段注释 :<<’echo hello,world!’ 12.查看网卡是否有网线物理连接 /sbin/mii-tool 13.查看linux系统或者mysql错误码表示的意思,如查看13错误码表示的意思: perror 13 14.删除0字节文件 find -type f -size 0 -exec rm -rf {} ; 15.1.如何杀掉mysql进程: ps aux|grep mysql|grep -v grep|awk ''{print $2}''|xargs kill -9 (从中了解到awk的用途) pgrep mysql |xargs kill -9 killall -TERM mysqld kill -9 `cat /usr/local/apache2/logs/httpd.pid` 试试查杀进程PID 16.显示运行3级别开启的服务: ls /etc/rc3.d/S* |cut -c 15- (从中了解到cut的用途,截取数据) 17.如何在编写SHELL显示多个信息,用EOF cat << EOF -------------------------------------------------------------- | === Welcome to Tunoff services === | -------------------------------------------------------------- EOF 18. 取IP地址: ifconfig eth0|sed -n ''2p''|awk ''{print $2}''|cut -c 6-30 或者: ifconfig eth0 |grep "inet addr:" |awk ''{print $2}''|cut -c 6- 或者 ifconfig | grep ''inet addr:''| grep -v ''127.0.0.1'' | cut -d: -f2 | awk ''{ print $1}'' 或者: ifconfig eth0 | sed -n ''/inet /{s/.*addr://;s/ .*//;p}'' Perl实现获取IP的方法: ifconfig -a | perl - |
凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢! |
你可能对下面的文章感兴趣
上一篇: linux下的文件强制位下一篇: 一路走来!!
关于linux系统管理的常用shell命令的所有评论