`
qu_xiangjun805
  • 浏览: 20367 次
  • 性别: Icon_minigender_1
  • 来自: 上海
最近访客 更多访客>>
社区版块
存档分类
最新评论

Linux Shell 脚本应用

阅读更多


       1.删除0字节文件

  find -type f -size 0 -exec rm -rf {} \;

  2.查看进程按内存从大到小排列

  ps -e -o "%C : %p : %z : %a"|sort -k5 -nr

  3.按cpu利用率从大到小排列

  ps -e -o "%C : %p : %z : %a"|sort -nr

  4.打印说cache里的URL

  grep -r -a jpg /data/cache/* | strings | grep "http:" | awk -F'http:' '{print "http:"$2;}'

  5.查看http的并发请求数及其TCP连接状态: netstat -n | awk '/^tcp/ {++S[$NF]} END {for(a in S) print a, S[a]}'

  6. sed -i '/Root/s/no/yes/' /etc/ssh/sshd_config sed在这个文里Root的一行,匹配Root一行,将no替换成yes.

  7.如何杀掉mysql进程: ps aux|grep mysql|grep -v grep|awk '{print $2}'|xargs kill -9 (从中了解到awk的用途) killall -TERM mysqld kill -9 `cat /usr/local/apache2/logs/httpd.pid` 试试查杀进程PID

  8.显示运行3级别开启的服务: ls /etc/rc3.d/S* |cut -c 15- (从中了解到cut的用途,截取数据)

  9.如何在编写SHELL显示多个信息,用EOF cat << EOF +---------+ | === Welcome to Tunoff services === | +-------+ EOF

  10. for 的巧用(如给mysql建软链接)

  cd /usr/local/mysql/bin for i in * do ln /usr/local/mysql/bin/$i /usr/bin/$i done

  11. 取IP地址: 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}'

  12.内存的大小: free -m |grep "Mem" | awk '{print $2}'

  13. netstat -an -t | grep ":80" | grep ESTABLISHED | awk '{printf "%s %s\n",$5,$6}' | sort

  14.查看Apache的并发请求数及其TCP连接状态:

  netstat -n | awk '/^tcp/ {++S[$NF]} END {for(a in S) print a, S[a]}'

  15.因为同事要统计一下服务器下面所有的jpg的文件的大小,写了个shell给他来统计.原来用xargs实现,但他一次处理一部分,搞的有多个总和....,下面的命令就能解决啦. find / -name *.jpg -exec wc -c {} \;|awk '{print $1}'|awk '{a+=$1}END{print a}' CPU的数量(多核算多个CPU,cat /proc/cpuinfo |grep -c processor)越多,系统负载越低,每秒能处理的请求数也越多。

  16 CPU负载

  # cat /proc/loadavg 检查前三个输出值是否超过了系统逻辑CPU的4倍。

  18

  CPU负载 #mpstat 1 1 检查%idle是否过低(比如小于5%)

  19 内存空间

  # free 检查free值是否过低 也可以用 # cat /proc/meminfo

  20 swap空间

  # free 检查swap used值是否过高 如果swap used值过高,进一步检查swap动作是否频繁: # vmstat 1 5 观察si和so值是否较大

  21 磁盘空间

  # df -h 检查是否有分区使用率(Use%)过高(比如超过90%) 如发现某个分区空间接近用尽,可以进入该分区的挂载点,用以下命令找出占用空间最多的文件或目录: # du -cks * | sort -rn | head -n 10

  22 磁盘I/O负载

  # iostat -x 1 2 检查I/O使用率(%util)是否超过100% 23 网络负载 # sar -n DEV 检查网络流量(rxbyt/s, txbyt/s)是否过高

  24 网络错误

  # netstat -i 检查是否有网络错误(drop fifo colls carrier) 也可以用命令:# cat /proc/net/dev

  25 网络连接数目

  # netstat -an | grep -E “^(tcp)” | cut -c 68- | sort | uniq -c | sort -n

  26 进程总数

  # ps aux | wc -l 检查进程个数是否正常 (比如超过250)

  27 可运行进程数目

  # vmwtat 1 5 列给出的是可运行进程的数目,检查其是否超过系统逻辑CPU的4倍

  28 进程

  # top -id 1 观察是否有异常进程出现

  29 网络状态 检查DNS, 网关等是否可以正常连通

  30 用户

  # who | wc -l 检查登录用户是否过多 (比如超过50个) 也可以用命令:# uptime

  31 系统日志

  # cat /var/log/rflogview/*errors

  检查是否有异常错误记录 也可以搜寻一些异常关键字,例如: # grep -i error /var/log/messages # grep -i fail /var/log/messages

  32 核心日志

  # dmesg 检查是否有异常错误记录

  33 系统时间

  # date 检查系统时间是否正确

  34 打开文件数目

  # lsof | wc -l 检查打开文件总数是否过多

  35 日志

  # logwatch –print 配置/etc/log.d/logwatch.conf,将 Mailto 设置为自己的email 地址,启动mail服务 (sendmail或者postfix),这样就可以每天收到日志报告了。缺省logwatch只报告昨天的日志,可以用# logwatch –print –range all 获得所有的日志分析结果。可以用# logwatch –print –detail high 获得更具体的日志分析结果(而不仅仅是出错日志)。

  36.杀掉80端口相关的进程

  lsof -i :80|grep -v "ID"|awk '{print "kill -9",$2}'|sh

  37.清除僵死进程。

  ps -eal | awk '{ if ($2 == "Z") {print $4}}' | kill -9

  38.tcpdump 抓包 ,用来防止80端口被人攻击时可以分析数据

  # tcpdump -c 10000 -i eth0 -n dst port 80 > /root/pkts

  39.然后检查IP的重复数 并从小到大排序 注意 "-t\ +0" 中间是两个空格

  # less pkts | awk {'printf $3"\n"'} | cut -d. -f 1-4 | sort | uniq -c | awk {'printf $1" "$2"\n"'} | sort -n -t\ +0

  40.查看有多少个活动的php-cgi进程

  netstat -anp | grep php-cgi | grep ^tcp | wc -l chkconfig --list | awk '{if ($5=="3n") print $1}'

  41.kudzu查看网卡型号

  kudzu --probe --class=network
0
1
分享到:
评论

相关推荐

    Linux shell 脚本攻略源代码第二版

    在IT领域,Linux Shell脚本是系统管理员和开发者日常工作中不可或缺的工具,它允许用户通过命令行接口自动化执行一系列任务。《Linux shell 脚本攻略-第二版》是一本深受赞誉的书籍,旨在帮助读者深入理解并掌握...

    LinuxShell脚本编程实例.doc

    本文将通过实例讲解Linux Shell脚本编程的基本概念、语法和应用。 一、基本概念 1. Shell脚本是什么? Shell脚本是指使用Shell命令语言编写的程序,用于自动执行一系列任务或操作。Shell脚本通常以文本文件形式...

    Linux shell 脚本攻略

    本书《Linux Shell脚本攻略》(第2版)深入浅出地介绍了Shell脚本的编写技巧和实战应用,非常适合对Linux感兴趣的初学者学习。 **Shell脚本基础** 1. **Shell介绍**:Shell是Linux的命令解释器,它提供了一个与...

    LINUX SHELL 脚本攻略

    Linux Shell脚本攻略是一本针对Linux操作系统下Shell脚本编写的指导书籍。...通过本书,读者可以逐步学习并掌握Shell脚本的编写技巧,并将其应用到实际的工作和项目中,提高工作效率和系统管理能力。

    linux下shell脚本实现数据的导出

    在Linux环境下,shell脚本是自动化任务的强大工具,尤其对于数据导出这样的操作,通过编写shell脚本可以方便地实现定期备份或者按需导出。本文将深入讲解如何使用shell脚本来实现数据的导出,并结合Java代码进行调用...

    LinuxShell脚本编程实例.pdf

    在Linux Shell脚本编程中,菜单Shell脚本是一种常见的应用场景。菜单Shell脚本是通过使用case语句和read命令来实现菜单选择的。在脚本中,case语句用于匹配用户的输入,read命令用于读取用户的输入。 在脚本中,...

    linux shell 脚本入门

    Linux Shell脚本是Linux系统中用于自动...通过"shell-script-entry.pdf"的学习,读者可以掌握Shell脚本的基本概念,为进一步深入学习和应用Linux自动化提供基础。记得结合实际操作练习,才能更好地理解和运用这些知识。

    Linux Shell 脚本基础

    另外,`liucheng.sh`和`liucheng (2).sh`可能包含了一些具体示例或练习,帮助学习者理解Shell脚本的实际应用。`var_scrip.sh`可能涉及到变量的使用和操作,而`test.sh`可能使用了`test`或`[`命令进行条件测试。 在...

    linux shell脚本攻略源代码

    通过阅读和分析这些源代码,你可以更深入地理解Shell脚本的用法,并学会如何将理论知识应用到实际问题中。 总之,学习和掌握Linux Shell脚本不仅可以帮助你更好地管理和维护Linux系统,还可以为自动化日常任务、...

    Linux Shell 脚本攻略 中文 第三版和源码

    在IT领域,Linux Shell脚本是系统管理员和开发者日常工作中不可或缺的工具,它允许用户通过命令行编写自动化任务,提高工作效率。"Linux Shell 脚本攻略 中文 第三版和源码"提供了全面的学习资源,帮助你深入理解并...

    Linux下清理数据库shell脚本

    综上所述,"Linux下清理数据库shell脚本"涉及了Linux系统管理、数据库备份策略、shell脚本编程、任务调度和错误处理等多个方面。通过编写这样的脚本,我们可以实现自动化运维,提高工作效率,同时保障数据的安全性和...

    LinuxShell脚本攻略中文版+源码

    "linux+shell+script.rar"的压缩文件可能会包含各种Shell脚本示例,这些示例可以用于学习或直接应用到实际工作场景中。它们可能覆盖了各种常见任务,如系统初始化脚本、定时任务、日志分析、数据备份、系统监控等。...

    linux shell脚本定时清理tomcat日志文件

    Linux shell脚本定时清理tomcat日志文件 本文将详细介绍 Linux 环境中使用 shell 脚本来定时清理 Tomcat 日志文件的方法。该方法使用 cron 机制来实现每天自动切割日志文件,并删除 4 天前的日志文件。 知识点一:...

    Linux Shell 脚本攻略

    本攻略将深入探讨Linux Shell脚本的核心概念、语法结构以及实战应用。 1. **Shell基础** - **什么是Shell?** Shell是Linux操作系统中的一个命令解释器,它为用户提供了一个与操作系统内核交互的接口。 - **常见的...

    LinuxShell脚本攻略,中英两份

    Linux Shell脚本攻略是针对那些想要深入理解和应用Linux操作系统中的Shell脚本编程的用户而设计的资源。Shell脚本是Linux系统中一种强大的自动化工具,它允许用户通过编写一系列命令来执行复杂的任务,从而提高工作...

    LINUX SHELL脚本攻略(中文版带书签)

    2. **环境变量**:理解并设置环境变量是编写Shell脚本的基础,书中会详细讲解如何定义、查看和修改环境变量,以及它们在脚本中的应用。 3. **基本语法**:包括注释、变量声明、命令行参数、流程控制结构(如if-else...

    LINUX SHELL脚本攻略 中文版

    7. **高级主题**:涵盖环境变量、进程控制(如后台运行、信号处理)、网络操作、系统管理等更复杂的SHELL脚本应用。 8. **实战案例**:书中110多个实例涵盖了各种常见的系统管理和自动化任务,如日志分析、文件备份...

    LINUX+SHELL脚本攻略.pdf

    根据提供的文件信息,“LINUX+SHELL脚本攻略.pdf”似乎是一份关于Linux系统下的Shell脚本编程指南。这里我们将从几个方面对这份资料可能涵盖的关键知识点进行总结与扩展。 ### Linux简介 Linux是一种免费开放源...

    完全使用Linux shell脚本语言编写的一个简单的作业管理系统

    在IT行业中,Linux Shell脚本语言是系统管理员和开发者常用的一种工具,用于自动化日常任务和管理系统。本项目是一个使用Linux Shell脚本实现的简单作业管理系统,它提供了对学生和教师友好的交互界面,使得作业管理...

Global site tag (gtag.js) - Google Analytics