SHELL判断服务是不是正在运行
使用SHELL脚本进行检查服务开启情况
#!/bin/bash
#需要首先安装 yum install nmap -y #检查指定端口是否开启
function checkPortStatus()
{
status=`nmap -sS 127.0.0.1 -p $ | grep open | awk '{print $2}'`
if [ "$status" != "open" ];
then
return ;
else
return ;
fi
} checkPortStatus
echo $? checkPortStatus
echo $?
调用python发送QQ邮件的邮件(可以防止垃圾邮件屏蔽)
#-*-coding:utf--*- #===============================================================================
# 导入smtplib和MIMEText
#===============================================================================
from email.MIMEText import MIMEText
from email.Header import Header
import smtplib, datetime,sys #===============================================================================
# 要发给谁,这里发给1个人
#===============================================================================
mailto_list=["10402852@qq.com"] #===============================================================================
# 设置服务器,用户名、口令以及邮箱的后缀
#===============================================================================
mail_host="smtp.qq.com"
mail_user=""
mail_pass="*************"
mail_postfix="qq.com" #===============================================================================
# 发送邮件
#===============================================================================
def send_mail(to_list,sub,content):
'''
to_list:发给谁
sub:主题
content:内容
send_mail("10402852@qq.com","sub","content")
'''
me=mail_user+"<"+mail_user+"@"+mail_postfix+">"
msg = MIMEText(content)
msg['Subject'] = sub
msg['From'] = me
msg['To'] = ";".join(to_list)
try:
s = smtplib.SMTP()
s.connect(mail_host)
s.login(mail_user,mail_pass)
s.sendmail(me, to_list, msg.as_string())
s.close()
return True
except Exception, e:
print str(e)
return False
if __name__ == '__main__':
if send_mail(sys.argv[1],sys.argv[2],sys.argv[3]):
print "发送成功"
else:
print "发送失败"
测试用例:
[root@199 huanghai]# python mail.py 10402852@qq.com 黄海的测试标题 黄海的测试内容
发送成功
watch.py 监控CPU,内存,磁盘等情况
#!/usr/bin/python
#fileName:getinfoinsh.py
#get cpu,meminfo from top command. import os
import time def getinfointop():
topp=os.popen("top -n1|grep -E '^Cpu|^Mem'")
toppstr=topp.read()
replacestr=["\x1b","[m","\x0f","[K"]
# replace the str cannt be printed.
for item in replacestr:toppstr=toppstr.replace(item,'') splitstr=toppstr.split("\n") cpuinfo=splitstr[].split()
meminfo=splitstr[].split()
info=(cpuinfo[].strip(','),cpuinfo[].strip(','),cpuinfo[].strip(','),meminfo[],meminfo[],meminfo[])
return info def getinfoindh(): dhplines=[]
for i in os.popen("df -h"):
dhplines.append(i.strip())
return dhplines if __name__=='__main__':
info=getinfointop()
diskinfo=getinfoindh()
print 'cpu info:'
print "user cpu used:",info[]
print "system cpu used:",info[]
print "free cpu:",info[]
print ''
print 'Mem info:'
print "used mem:",info[]
print "free mem:",info[]
print "total mem:",info[]
print ''
print 'disk info:'
for i in diskinfo:print i
print ''
print 'time:', time.strftime('%Y-%m-%d %H:%M',time.localtime(time.time()))
SHELL判断服务是不是正在运行的更多相关文章
- Android之判断某个服务是否正在运行的方法
/** * 判断某个服务是否正在运行的方法 * * @param mContext * @param serviceName * 是包名+服务的类名(例如:net.loonggg.testbackst ...
- Android 如何判断指定服务是否在运行中 “Service”
如何判断一个服务是否正在运行中: /** * 判断某个服务是否正在运行的方法 * * @param mContext * @param serviceName 是包名+服务的类名 * @return ...
- ServiceStatusUtils判断服务是否运行
import android.app.ActivityManager; import android.app.Service; import android.content.Context; impo ...
- Android 如何判断一个应用在运行(转)
Android 如何判断一个应用在运行 在一个应用中,或一个Service .Receiver中判断一个应用是否正在运行,以便进行一些相关的处理. 这个时候我们需要得到一个ActivityManag ...
- Android如何判断一个应用在运行
在一个应用中,或一个Service .Receiver中有时候需要判断一个应用是否正在运行,以便进行一些相关的处理,这个时候我们需要得到一个ActivityManager,这个Manager顾名思意就 ...
- android如何判断服务是否正在运行状态
如何检查后台服务(Android的Service类)是否正在运行?我希望我的Activity能够显示Service的状态,然后我可以打开或者关闭它. /** * 判断服务是否处于运行状态. * @pa ...
- WCF心跳判断服务端及客户端是否掉线并实现重连接
WCF心跳判断服务端及客户端是否掉线并实现重连接 本篇文章将通过一个实例实现对WCF中针对服务端以及客户端是否掉线进行判断:若掉线时服务器或客户端又在线时将实现自动重连:将通过WCF的双工知识以及相应 ...
- shell监控网站是否自动运行并自动重启【原创】
shell监控网站是否自动运行并自动重启 #!/bin/bash -T www.baidu.com ];then echo "`date` 网站访问正常!" >> /r ...
- Android中判断service是否在运行
/** * 判断服务是否开启 * * @return */ public static boolean isServiceRunning(Context context, String Service ...
随机推荐
- Ubuntu12.04下YouCompleteMe安装教程(部分)
1.通过源码编译安装VIM 开发中使用的是Ubuntu 12.04 LTS,通过sudo apt-get install vim安装的版本较低,不支持YCM,所以,用源码编译并安装最新的Vim. 卸载 ...
- 震惊!几道Python 理论面试题,Python面试题No18
本面试题题库,由公号:非本科程序员 整理发布 第1题: 简述解释型和编译型编程语言? 解释型语言编写的程序不需要编译,在执行的时候,专门有一个解释器能够将VB语言翻译成机器语言,每个语句都是执行的时候 ...
- windows下pip安装python模块时报错【转】
windows下pip安装python模块时报错总结 请给作者点赞--> 原文链接 1 权限问题 C:\Users\ljf>pip install xlwt Exception: Trac ...
- RAID与LVM磁盘阵列技术
RAID(Redundant Array of Independent Disks,独立冗余磁盘阵列) RAID概念: RAID技术通过把多个硬盘设备组合成一个容量更大.安全性更好的磁盘阵列,并把数据 ...
- 校内考试之zay与银临(day1)
T1大美江湖(洛谷P5006) zayの题解: 这个题的本质是模拟 不过有卡ceil的地方 ceil是对一个double进行向上取整,而对于int/int来说,返回值是int 举个生动的栗子 ceil ...
- HDU 3032 Nim or not Nim?(Multi_SG,打表找规律)
Nim or not Nim? Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others)T ...
- adaboost python实现小样例
元算法是对其他算法进行组合的一种方式.单层决策树实际上是一个单节点的决策树.adaboost优点:泛化错误率低,易编码,可以应用在大部分分类器上,无参数调整缺点:对离群点敏感适用数据类型:数值型和标称 ...
- {{}},ng-bind和ng-model的区别
ng-bind 与ng-model区别 <input ng-model="object.xxx"> <span ng-bind="object.xxx& ...
- laravel5.2总结--本地化以及常量的使用
1.本地化 Laravel 的本地化功能提供方便的方法来获取多语言的字符串,让你的网站可以简单的支持多语言. 语言包存放在 resources/lang 文件夹的文件里.每一个子目录应该对应一种语言 ...
- 谋哥:转型之痒与App推广之痛
昨天<重庆今日教育>的副主编汪熙坤老师先加我微信,谋哥的微信每天有几十个不同领域的朋友加.几句客套后,他马上就直奔主题了.为什么这么着急呢?是因为危机感,是因为感受到了互联网给传统纸媒带来 ...