仅打印最旧的月份

时间:2018-11-06 04:46:17

标签: python python-3.x python-2.7

我制作脚本来登录服务器并执行命令。 而且我只想打印文件中最旧的月份。

from netmiko import Netmiko
from datetime import datetime
now = (datetime.now()).strftime('%b')
oldest = 'May'
LS = CONNECT.send_command("ls -tGg /root/backup | awk '{print $4, $7}'")
result = LS.split('/n')

此处是print(LS)

的示例
May File1
May File2
Jun File3
Jun File4
Jul File5   

因此,我想打印最早的文件,在这种情况下为File1 File2 这里是示例脚本

for i in result:
    file = i.split()
        if file[0] == oldest:
        print(file[1])

但是在此脚本上,我手动分配了最早的月份。 我如何自动跟踪最旧的月份?

2 个答案:

答案 0 :(得分:0)

请使用以下代码:

import os

files = sorted(os.listdir(path), key=os.path.getctime)

oldest=files[0]

newest=files[-1]

注意:用目录路径替换路径

答案 1 :(得分:0)

请使用以下代码:

months = [“未知”,               “一月”,               “ Febuary”,               “游行”,               “四月”,               “可以”,               “君”               “七月”,               “八月”,               “九月”,               “十月”,               “十一月”,               “十二月”]

result=['May File1','May File2','Jun File3','Jun File4']
set1= set()
for i in result:
    file = i.split()
    set1.add(months.index(file[0]))
min_val = min(set1)
val=months[min_val]
print("\n".join(s.split()[1] for s in result if val.lower() in s.lower()))

根据结果更改月份列表名称