shell中的if判断语句,供大家参考。 [ 前后空格 ] 前面空格 [ -a FILE ] 如果 FILE 存在则为真。 [ -b FILE ] 如果 FILE 存在且是一个块特殊文件则为真。 [ -c FILE ] 如果 FILE 存在且是一个字特殊文件则为真。 [ -d FILE ] 如果 FILE 存在且是一个目录则为...
$IFS默认为空白(空格, 制表符,和换行符),但这是可以修改的,比如,在分析逗号分隔的数据文件时,就可以设置为逗号。 例如111 222 333 444,这个字符串其实就是111222333444,由于IFS里也有个,所以在它眼中就是分隔符,所以111 222 333 444在它看来就是这个...
分享一个for循环+case的脚本(监控程序状态并执行相关操作) ,供大家学习参考。 复制代码 代码如下: #/bin/bash set -x HOSTS=nginxmysqlphp-cgi for myhost in $HOSTS do count=(`ps aux |grep $myhost |grep -v grep |wc -l`) echo $myhost echo $count if...
假设,我们这里有个文件aaa.txt,其内容中有一些包括有效ip地址的行,需要我们用一条命令找出这些行,此时不妨用egrep试试哦。 先来看下aaa.txt文件的内容: 复制代码 代码如下: [root@localhost]# cat aaa.txt 192.168.1.1 1234.234.04.08 123.1234.045.678...
原理: 使用 msmtp+mutt+shell来实现 之前在Linux下使用mail命令来发送邮件,配置起来比较麻烦,需要配置sendmail的很多东西。而且还必须启动sendmail才能保证邮件发送成功。其实我们就只要能发送邮件就可以,服务器多开个东西就等于多一个入侵的门。而且sen...
mysql主从监控的shell脚本 一个mysql主从监控的脚本,供大家学习参考。 复制代码 代码如下: #!/bin/bash #mysql check by lks Date=`date +%y-%m-%d %H:%M:%S` Port=3306 Master_IP=192.168.4.11 Slave_IP=192.168.4.15 192.168.4.18 Mysql_bin=/usr/local/m...
监控硬盘使用率的shell脚本,供大家学习参考。 硬盘监控脚本,大部分使用df形式然后awk等方法把使用率格式化成数字去判断,但是发现当分区格式不一样的时候,有时候就会出错,现在的大部分linux主机都有安装nagios,不管是监控还是被监控,nagios上面都有很...
脚本原理 : 把所有要监控的网站dig IP出来,然后测试该IP的80端口是否能通,如果不通的话,则把在该IP上的所有站点列出来并报警。 这个是我最后修改的版本,10秒运行完161个站点(含在CDN的站点)所有检测,把需要检测的域名写到文件80_URL.txt 里面 每个域...
监控网站关键字的shell脚本,供大家学习参考。 本脚本会用到nagios的一个命令 check_http ,可以直接从nagios里面拷贝过来放在/bin/下加权限后使用。 使用方法 :check_http -H域名-u url -s 关键字 脚本部分字段说明: DATA 记录时间 ERROR 判断值,初始值0...
检测apache与nginx的80端口并自动重启的脚本,感兴趣的朋友可以参考下。 apache 80 端口检测与自启动,nginx80端口的检测与自启动。 此脚本可以在apache在参数都设置正常的情况崩溃后自动重启web,但是如果是配置参数导致的崩溃脚本没有办法帮你启动,但是会...
本脚本实现:获取内存,虚拟内存使用率(百分比),如果物理内存超过95%,虚拟内存超过20%则发送报警。 文件:chk_mem.sh 复制代码 代码如下: #!/bin/bash IP=`ifconfig | grep inet | grep -v 127.0.0.1 |awk-F {print $2}|awk-F: {print $2}| head -n 1` //...
如何用shell脚本自动发送邮件? 1、编辑用户Home目录下的.muttrc文件,设置发信环境。 复制代码 代码示例: # cat /root/.muttrc set envelope_from=yes set from=it@itnet.cn set realname=itnetcn set use_from=yes set rfc2047_parameters=yes set charset...
shell脚本实现拷贝大文件时显示百分比的实现方法,shell脚本复制文件的例子。 例子,shell脚本复制文件,容易较大的文件会显示复制进度,以百分比显示,与wget下载命令的进度显示很相似。 代码: 复制代码 代码示例: #!/bin/sh #from: www.it.net.cn strace...
有关linux shell中将输出与错误消息重定向到日志文件中的方法,shell输出与错误重定向的例子。 shell日志重定向 开始之前: exec 31 exec 42 exec $LOGFILE 结束后还原: exec 13 3- exec 24 4- 第二部分,shell标准出错重定向到标准输出 shell标准出错重定...
linux敏感用户是指这个用户属于多个组,或这个用户属于的组名跟这个用户名不一样。 下面用shell脚本查看linux敏感用户信息。 复制代码 代码示例: #!/bin/bash #list user who belong to more than one group #and list user who belong to the group which i...
假设我们定义了一个变量为: file=/dir1/dir2/dir3/my.file.txt 可以用${ }分别替换得到不同的值: ${file#*/}:删掉第一个 / 及其左边的字符串:dir1/dir2/dir3/my.file.txt ${file##*/}:删掉最后一个 / 及其左边的字符串:my.file.txt ${file#*.}:删掉第...
对于shell中的终端打印感觉很好玩! 首先知道shell中终端打印有echo printf一般常用的就是echo咯; 注:字体颜色 重置=0,黑色=30,红色=31,绿色=32, ***=33,蓝色=34, 洋红=35, 青色=36, 白色=37. 背景颜色 重置=0,黑色=40,红色=41,绿色=42, ***=4...
今天的课程中我们将学习对用户输出的参数进行判断。 例子: 如果你说别人坏话?那就要挨打了。 故事2: 当你吃零食时,猫儿在你身边叫的时候,你听到了,然后你将手中的零食,分了一块给小猫,小猫得到零食后,就离开你了。很显然这只猫是吃贷。 下面我们拆分...
#!/bin/bash rm -rf top100 #删除包含上次记录的文件 top -d 300 -n 1 -b |awk {if($9=100 $12~/linux/)print $2@centoscn.com} top100 #以文本格式输出top信息一次,并从中提取cpu占用100%且进程名为linux的所有用户名;将用户名转换成邮件地址并存入文件to...
正则其实也势利,削尖头来把钱揣; (指开始符号^和结尾符号$) 特殊符号认不了,弄个倒杠来引路; (指\. \*等特殊符号) 倒杠后面跟小w, 数字字母来表示; (\w跟数字字母;\d跟数字) 倒杠后面跟小d, 只有数字来表示; 倒杠后面跟小a, 报警符号嘀一声;...
简单练习使用shell编写通过scp+expect批量拷贝文件到远程服务器,以下测试环境为vmware+CentOS 5.5 使用前确定安装了expect软件,如没安装可直接通过yum安装。 如有以下服务器ip列表: [root@server shell]# cat iplist.txt 192.168.50.80 192.168.209.128 1...
说明: 本篇文章实现shell获取服务器内存使用率,超过指定值时通过mutt调用msmtp发送告警邮件! msmtp是linux下的一个邮件收发客户端,而mutt则是一个email程序,是用来管理email的 实现: 1.安装msmtp # wget http://downloads.sourceforge.net/msmtp/msmtp...
将用户执行的每个shell命令记入日志比最初想象的要来得困难。shell的历史功能原本旨在帮助用户使用以前用过的命令。我们都知道这种使用场合:你刚输入了一个长长的字段,可是拼错了一个字符。shell的历史让你可以改正这一个字符,而不必输入其余的所有字符。...
课上shell考试题目(企业面试重点题目,学生需课堂动手实践): 企业面试题1: 使用for循环在/oldboy目录下批量创建10个文件,名称依次为: oldboy-1 oldboy-2 oldboy-3 ...... oldboy-10 提示:以后再考大家文件前缀也要随机,结尾是数字序列。 例如随机创...
今天看到一网友观看老男孩shell视频后,问了一个问题如下: 解答思想: 我们学习shell的最好方法就是参看系统的标杆脚本及帮助的example。 下面是网卡启动脚本的有关这位网友问题的脚本样例。 很明显上述中括号字符比较等号两边有空格。所以上述的问题答案就...
linux shell用于apache服务器中日志文件分析的命令 1、查看apache进程: ps aux | grep httpd | grep -v grep | wc -l 2、查看80端口的tcp连接: netstat-tan | grep ESTABLISHED | grep :80 | wc -l 3、通过日志查看当天ip连接数,过滤重复: cat access_lo...
shell脚本分析网站日志 在linux系统中,使用 shell分析网站日志 ,需要对包括cd命令、ls命令、cat命令、grep命令等linux命令非常熟悉,下面为大家介绍下。 一、cd命令:用于确定日志文件所在的文件夹。 如日志在d盘: cd d: 或 cd /cygdrive/d/ 如日志在d盘w...
例子,服务器日志批量切割工具shell实例代码。 复制代码 代码示例: #!/bin/bash # www.it.net.cn # logsPath=/web/logs/ workPath=$1 if [ -z ${workPath} ];then echo 参数异常 exit fi if [ ! -d logsPath ];then mkdir -p ${logsPath} fi # supported pat...
例子: 重启filebeat 升级版 #!/bin/bash ps -ef|grep filebeat |grep -v grep|cut -c...
crontab是linux自带的计划任务程序,可以实现分,时,日,周,月。 但是crontab有两个...
我在 CU 的日子并不长,有幸在 shell 版上与大家结缘。除了跟众前辈学习到不少技巧之...
cpu时间是一项重要的资源,有时,我们需要跟踪某个时间内占用cpu周期最多的进程。 在...
介绍一个强大的分析网络的shell脚本,此脚本是从EZHTTP拆分出来的,觉得有必要单独介...
Shell是一种具备特殊功能的程序,它是介于使用者和 UNIX/Linux 操作系统之核心程序(k...