具体代码如下>

import  paramiko,re,datetime,time
ssh=paramiko.SSHClient()
ssh.set_missing_host_key_policy(paramiko.AutoAddPolicy())
ssh.connect(hostname="10.124.198.75",port=8122,username="admin",password='****',timeout=2)
stdin,stdout,stderr=ssh.exec_command("stat /etc/passwd | grep Change")
stdin_sys,stdout_sys,stderr_sys=ssh.exec_command("date +%s")
change_time=re.search('Change: (.+)\\.',stdout.read().decode('utf-8')).group(1)
time1=datetime.datetime.strptime(change_time,"%Y-%m-%d %H:%M:%S")
change_time_new=str(time.mktime(time1.timetuple())).strip('.0')
sys_time=stdout_sys.read().decode('utf-8').strip()
time_stay=int(sys_time) - int(change_time_new)
print("距离上次更改:",datetime.timedelta(seconds=time_stay))

详解>

import paramiko,re,datetime,time

#连接linux服务器
ssh=paramiko.SSHClient()
ssh.set_missing_host_key_policy(paramiko.AutoAddPolicy()) #允许连接不在hosts文件中的主机
ssh.connect(hostname="10.124.198.75",port=8122,username="admin",password='****') #执行命令,获取到当前的系统时间(秒),和对应文件的修改时间。
#命令执行完后,会存储在stdout里面。
stdin,stdout,stderr=ssh.exec_command("stat /etc/passwd | grep Change")
stdin_sys,stdout_sys,stderr_sys=ssh.exec_command("date +%s") #读取stdout中的内容,并进行正则匹配,得到想要文件更改时间,并存储到变量中,格式如:(2019-01-23 16:44:15)
change_time=re.search('Change: (.+)\\.',stdout.read().decode('utf-8')).group(1) #将时间转换为秒,,"%Y-%m-%d %H:%M:%S" 此处的定义根据我们时间的格式进行更改(2019-01-23 16:44:15)
time1=datetime.datetime.strptime(change_time,"%Y-%m-%d %H:%M:%S") change_time_new=str(time.mktime(time1.timetuple())).strip('.0') #获取系统当前时间,并将当前时间减去上次修改的时间(秒 - 秒)
sys_time=stdout_sys.read().decode('utf-8').strip()
time_stay=int(sys_time) - int(change_time_new) #秒转换为可识别的时间(距离上次更改: 41 days, 21:30:03)
print("距离上次更改:",datetime.timedelta(seconds=time_stay))

#执行测试

距离上次更改,41天22小时3分钟41秒

python练习-(秒转时分秒,时分秒转秒)-对比linux中文件的上次更改时间跟当前时间相差多久。的更多相关文章

  1. PHP 将秒数转换成时分秒

    将秒数转换成时分秒,PHP提供了一个函数gmstrftime,不过该函数仅限于24小时内的秒数转换.对于超过24小时的秒数,我们应该怎么让其显示出来呢,例如 34:02:02 $seconds = 3 ...

  2. H面试程序(1)编写一个函数,要求输入年月日时分秒,输出该年月日时分秒的 下一秒

    编写一个函数,要求输入年月日时分秒,输出该年月日时分秒的下一秒. 如输入 2004 年 12 月 31 日 23 时 59 分 59 秒,则输出 2005年 1 月 1 日 0 时 0 分 0 秒. ...

  3. PHP函数gmstrftime()将秒数转换成天时分秒

    http://yangjunwei.com/a/930.html PHP函数gmstrftime()将秒数转换成天时分秒   一个应用场景需要用到倒计时的时分秒,比如新浪微博授权有效期剩余: 7天16 ...

  4. Why Python's Integer Division Floors ---- python int(6/-132)时答案不一致,向下取整

    leetcode150题中有一个步骤: int(6/-132) == 0 or ==-1? 在自己本地python3环境跑是int(6/-132) =0,但是提交的时候确实-1. 查找相关资料解惑: ...

  5. Java 获取各时区时间,获取当前时间到格林威治时间1970年01月01日00时00分00秒的秒数

    格林威治时间即UTC/GMT时间,1970年01月01日00时00分00秒(即UTC+8的北京时间1970年01月01日08时00分00秒)计算代码如下: /** * 获取指定时间到格林威治时间的秒数 ...

  6. python解释器的安装;python2与python3同时在环境变量中时的解决方案

    新文档 html,body,div,span,applet,object,iframe,h1,h2,h3,h4,h5,h6,p,blockquote,pre,a,abbr,acronym,addres ...

  7. python使用xlrd读取excel数据时,整数变小数的解决办法

    python使用xlrd读取excel数据时,整数变小数: 解决方法: 1.有个比较简单的就是在数字和日期的单元格内容前加上一个英文的逗号即可.如果数据比较多,也可以批量加英文逗号的前缀(网上都有方法 ...

  8. python基础:re模块匹配时贪婪和非贪婪模式

    python贪婪和非贪婪 正则表达式通常用于在文本中查找匹配的字符串.Python里数量词默认是贪婪的(在少数语言里也可能是默认非贪婪),总是尝试匹配尽可能多的字符:非贪婪则相反,总是尝试匹配尽可能少 ...

  9. javascript 获得以秒计的视频时长

    <!DOCTYPE html> <html> <body> <h3>演示如何访问 VIDEO 元素</h3> <video id=&q ...

随机推荐

  1. vue.config.js基础配置

    const path = require('path') const UglifyPlugin = require('uglifyjs-webpack-plugin') module.exports ...

  2. idea代码爆红,clean,或者maven reimport都不起作用

    1 突然自己的idea的Maven项目代码都是爆红,但是可以运行,添加新的代码确无法运行 尝试了clean,或者reimport,甚至是大家推荐的,刷新缓存重启也没有作用 2 检查项目的jdk配置,也 ...

  3. MySQL8.0.17下载与安装

    下载环境:Windows 10 下载地址: https://dev.mysql.com/downloads/mysql/ 1.解压压缩包,修改解压目录. 2.在E:\mysql-8.0.17-winx ...

  4. c++ 二叉树的遍历(迭代,递归)

    #include<iostream> #include <algorithm> #include <vector> #include <set> #in ...

  5. 在DjangoAdmin中使用KindEditor(上传图片)

    一.下载 http://kindeditor.net/down.php 删除asp.asp.net.php.jsp.examples文件夹 拷贝到static目录下 二.配置 kindeditor目录 ...

  6. git远程分支创建,本地分支关联远程分支,第一次发布、更新分支

    git远程分支创建,本地分支关联远程分支,第一次发布.更新分支 github托管服务器地址为https://github.com git提交更新代码示意图: 本地与远程进行免密码配置(本地与远程关联) ...

  7. bat 读取 ini 文件

    bat 读取 ini 文件 参考链接:https://stackoverflow.com/questions/2866117/windows-batch-script-to-read-an-ini-f ...

  8. python subprocess popen 静默模式(不弹出console控制台)

    python subprocess popen 静默模式(不弹出console控制台) import subprocess,sys IS_WIN32 = 'win32' in str(sys.plat ...

  9. vue-cli3.0 环境变量与模式

    vue-cli3.0移除了配置文件目录: config和build文件夹.可以说是非常的精简了,那移除了配置文件目录后如何自定义配置环境变量和模式呢? 为什么需要配置环境变量和模式呢? 所有方法肯定是 ...

  10. RAID 5 是一种存储性能、数据安全和存储成本兼顾的存储解决方案

    可用容量:(n-1)/n的总磁盘容量(n为磁盘数) 原因:RAID5把数据和相对应的奇偶校验信息存储到组成RAID5的各个磁盘上,并且奇偶校验信息和相对应的数据分别存储于不同的磁盘上,其中任意N-1块 ...