设为首页 收藏本站
查看: 613|回复: 0

分享平时工作中一些给力的shell命令

[复制链接]

尚未签到

发表于 2018-8-22 13:58:03 | 显示全部楼层 |阅读模式
  分享平时工作中一些给力的shell命令
  1.显示消耗内存/CPU最多的10个进程
  ps aux | sort -nk +4 | tail
  ps aux  | sort -nk +3  | tail
  2. 查看 Apache 的并发请求数及其TCP连接状态
  netstat -n | awk '/^tcp/ {++S[$NF]} END {for(a in S) print a, S[a]}'
  3.找出自己最常用的 10 条命令及使用次数(或求访问最多的ip数)
  sed -e 's/| /\n/g' ~/.bash_history |cut -d ' ' -f 1 | sort | uniq -c | sort -nr | head
  关于这条命令有读者问sed语句的用处具体是什么,我这里详细说明下:我们平时用命令时不是用了很多管道符"|"吗,比如
  ps aux|sort -nk +4 |tail
  /s..../g就是把管道符"|"换成换行符"\n",于是
  ps aux |sort -nk +4 |tail
  就变成如下:
  ps aux
  sort -nk +4
  tail
  4.日志中第 10 个字段表示连接时间,求均连接时间
  cat access_log |grep "connect cbp" |awk 'BEGIN{sum=0;count=0;}{sum+=$10;count+ +;}END{printf("sum=%d,count=%d,avg= %f\n",sum,count,sum/count)}'
  5.lsof 命令
  lsof abc.txt
  #显示开启文件 abc.txt 的进程
  lsof -i :22
  #知道22端口现在运行什么程序
  lsof -c abc
  #显示abc进程现在打开的文件
  lsof -p 12
  #看进程号为12的进程打开了哪些文件
  6.杀掉一个程序的所有进程
  pkill -9 httpd
  killall -9 httpd
  注意尽量不用-9,数据库服务器上更不能轻易用 kill,否则造成重要数据丢失后果将不堪设想。
  7.rsync 命令(要求只同步某天的压缩文件, 而且远程目录保持与本地目录一致)
  /usr/bin/rsync -azvR -password-file=/etc/rsync.secrets `find . -name "*$yesterday.gz"  -type f ` storage@192.168.2.23::logbackup/13.21/
  8.把目录下*.sh文件改名为*.SH
  find . -name "*.sh" | sed  's/\ (.*\)\.sh/mv \0 \1.SH/' |sh
  find .  -name "*.sh" | sed 's/\(.*\)\.sh/mv & \1.SH/'|sh
  (跟上面那个效果一样)
  9.ssh 执行远程的程序,并在本地显示
  ssh -n -l zouyunhao 192.168.2.14 "ls -al /home/zouyunhao"
  10.  直接用命令行修改密码
  echo "zouyunhaoPassword" |passwd -stdin zouyunhao
  11.  快速生成 ssh 密钥对并上传
  ssh-keygen ssh-copy-id -i ~/.ssh/id_rsa.pub user@remoteServer
  12.以http方式共享当前文件夹的文件
  $ python -m SimpleHTTPServer
  在浏览器访问 http://IP:8000/即可下载当前目录的文件。
  13.shell 段注释
  :

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.iyunv.com/thread-555196-1-1.html 上篇帖子: Linux学习之Shell--第三天:Shell流程控制-if语句 下篇帖子: shell:expect实现非root用户切换脚本
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表