代码:

# -*- coding:utf-8 -*-
from psutil import * def cpu_usage_rate():
for i, j in zip(range(1, cpu_count(logical=False) + 1), cpu_percent(interval=1, percpu=True)):
print 'CPU' + str(i) + ':' + str(j) + '%' def memory_usage_rate():
vime = virtual_memory()
print 'Memory: %5s%% %6s/%s' % (
vime.percent, str(int(vime.used / 1024 / 1024)) + 'M', str(int(vime.total / 1024 / 1024)) + 'M') def get_disk_info():
print '磁盘信息:'
for i in disk_io_counters(perdisk=True).items():
print i
# Disk = namedtuple('Disk',
# 'major_number minor_number device_name read_count read_merged_count read_sections '
# 'time_spent_reading write_count write_merged_count write_sections time_spent_write io_requests '
# 'time_spent_doing_io weighted_time_spent_doing_do')
#
# with open('/proc/diskstats') as f:
# for line in f:
# if line.split()[2] == device:
# return Disk(*line.split())
# raise RuntimeError('device ({0}) not found!'.format(device)) def get_net_info():
print '网络情况:'
for i in net_io_counters(pernic=True).items():
print i def main():
print '—'*100
cpu_usage_rate()
print '\n'
memory_usage_rate()
print '\n'
get_net_info()
print '\n'
get_disk_info()
print '\n' if __name__ == '__main__':
main()

  2.设置定时运行python脚本

    以我的电脑安装的情况为例,我装的CentOS自带有crontab,所以不需要下载以及安装过程了,而且我的CentOS貌似不太一样,自带的不是shell命令运行环境而是bash,如果不知道自己的是什么可以使用下面命令查看:

which shell

  如果提示没有的话就可能是bash,或者再输入:

which bash

  接下来,直接使用命令:

crontab -e

  打开编辑页面,这里我的并没有配置环境变量,自动默认打开vim,如果需要配置的话,就要找到.profile文件夹,如果是bash,则文件夹名是:.bash_profile,这样名称的文件是隐藏文件,可在文件管理界面使用Ctrl + h看见隐藏文件。然后,在其中添加如下语句即可设置为默认使用vim打开:

EDITOR=vi; export EDITOR

  详见:http://linuxtools-rst.readthedocs.io/zh_CN/latest/tool/crontab.html

  接下来,可以先看看crontab命令的语法格式,使用命令查看

$ cat /etc/crontab

  Output:

  最后一行即是用法。

  最后,要执行python脚本,则编辑内容可如下(需要注意的是貌似需要提前建好.log的日志文件,不然会在var/mail/user中提示找不到文件):

*/1 * * * * python /test.py >> /test.log 2>&1

  对这段语法,这里有更好的解释:https://www.the5fire.com/ubuntu-crontab.html

  最后,我遇到的坑应该是非常少的了,所以,不一定合适解决所有人的问题,如有遇到其他情况,还请自行多查些资料,慢慢解决。

  参考资料:

    1.http://linuxtools-rst.readthedocs.io/zh_CN/latest/tool/crontab.html

    2.https://www.the5fire.com/ubuntu-crontab.html

python学习 —— 获取系统运行情况信息并在Linux下设置定时运行python脚本的更多相关文章

  1. python获取系统内存占用信息的实例方法

    psutil是一个跨平台库(http://code.google.com/p/psutil/),能够轻松实现获取系统运行的进程和系统利用率(包括CPU.内存.磁盘.网络等)信息.它主要应用于系统监控, ...

  2. System.getProperty()获取系统的配置信息

    原文地址:http://www.jsjtt.com/java/Javajichu/105.html 此处记录备用. 1. 通过System.getProperty()可以获取系统的配置信息,Syste ...

  3. System.getProperty()获取系统的配置信息(系统变量)

    原文地址:http://www.jsjtt.com/java/Javajichu/105.html 此处记录备用. 1. 通过System.getProperty()可以获取系统的配置信息,Syste ...

  4. C/C++通过WMI和系统API函数获取获取系统硬件配置信息

    转载:http://www.cnblogs.com/renyuan/archive/2012/12/29/2838716.html 转载:http://blog.csdn.net/jhqin/arti ...

  5. linux下设置计划任务执行python脚本

    linux下设置计划任务执行python脚本 简介 crontab命令被用来提交和管理用户的需要周期性执行的任务,与windows下的计划任务类似,当安装完成操作系统后,默认会安装此服务工具,并且会自 ...

  6. linux下,一个运行中的程序,究竟占用了多少内存

    linux下,一个运行中的程序,究竟占用了多少内存 1. 在linux下,查看一个运行中的程序, 占用了多少内存, 一般的命令有 (1). ps aux: 其中  VSZ(或VSS)列 表示,程序占用 ...

  7. Linux 下用 crontab 设置定时执行python 程序

    Linux 下用 crontab 设置定时执行python 程序 方法/步骤   1,先大概了解crontab,/etc/crontab 就是crontab 的配置文件. crontab命令详解可以查 ...

  8. (转)linux下fork的运行机制

    转载http://www.cnblogs.com/leoo2sk/archive/2009/12/11/talk-about-fork-in-linux.html 给出如下C程序,在linux下使用g ...

  9. 【Linux下进程机制】从一道面试题谈linux下fork的运行机制

    今天一位朋友去一个不错的外企面试linux开发职位,面试官出了一个如下的题目: 给出如下C程序,在linux下使用gcc编译: #include "stdio.h" #includ ...

随机推荐

  1. LabVIEW随笔2_毕业了

    08年研究生毕业了,在原来公司的兼职也结束了,开始真正的工作生涯了. 在此,非常感恩我的导师綦院长,体谅我的困楚之处,在我的研究生学习期间给予我的宽容和照顾.不料,2014年,恩师五十有余,却突然离世 ...

  2. 用synchronized实现互斥锁

    package seday10;/** * @author xingsir * 互斥锁 * 当使用synchronized锁定多个代码片段,并且他们指定的同步监视器对象是同一个时,那么这些代码片段之间 ...

  3. 密码学笔记——playfair密码

     Playfair密码(Playfair cipher 或 Playfair square)一种替换密码,1854年由查尔斯·惠斯通(Charles Wheatstone)的英国人发明. 例题: 某种 ...

  4. Bugku-CTF之PHP_encrypt_1(ISCCCTF) [fR4aHWwuFCYYVydFRxMqHhhCKBseH1dbFygrRxIWJ1UYFhotFjA=]

    Day34     PHP_encrypt_1(ISCCCTF) fR4aHWwuFCYYVydFRxMqHhhCKBseH1dbFygrRxIWJ1UYFhotFjA=   下载下来.zip文件  

  5. Stylus-import

    Stylus Import Disclaimer: In all places the @import is used with Stylus sheets, the @require could b ...

  6. 避坑之Hadoop安装伪分布式(Hadoop3.2.0/Ubuntu14.04 64位)

    一.安装JDK环境(这个可以网上随意搜一篇教程了照着弄,这里不赘述) 安装成功之后 输入 输入:java -version 显示如下说明jdk安装成功(我这里是安装JDK8) 二.安装Hadoop3. ...

  7. 通过颜色绘制图片UIImage

    + (UIImage *)clearImageView { UIColor *color=[UIColor clearColor]; CGRect rect =CGRectMake(,,,); UIG ...

  8. Go语言基础之runtime包

    文章引用自 Golang中runtime的使用 runtime调度器是非常有用的东西,关于runtime包几个方法: Gosched:让当前线程让出cpu以让其他线程运行,它不会挂起当前线程,因此当前 ...

  9. CentOS安装MySQL的步骤

    1.下载 Mysql yum包 http://dev.mysql.com/doc/mysql-yum-repo-quick-guide/en/ 下载到本地再上传到服务器,或者使用wget 直接下载 w ...

  10. SpringCloud全家桶学习之概览(一)

    一.概览 根据百度百科的描述,微服务架构是一项在云中部署应用和服务的新技术.而SpringCloud是微服务架构思想的一个具体实现,它为开发人员提供了构建分布式系统中一些常见模式的工具(服务注册与发现 ...