#---------------------------------------------------------
# Print days diff by Converting Unix timestamp to Readable Date/time
#---------------------------------------------------------
def convUnixTime(t):
return 1+(datetime.datetime.fromtimestamp(t*60*60*24)
- datetime.datetime.today()).days
#---------------------------------------------------------
# Read shadow file and check for account expires and create dictionary
#---------------------------------------------------------
with open( "/etc/shadow" ) as shadow:
for aLine in shadow:
filed = aLine.split(":")
f = filed[7]
try:
f = int(f)
f=convUnixTime(f)
except ValueError:
f = "NULL"
if f != "NULL" and f <= 0:
total_expired_users += 1
expr_list[ filed[0] ] = f
elif f != "NULL" and f <= min_days:
total_expring_users += 1
expr_list[ filed[0] ] = f
我已经创建了帐户已过期的用户字典,但我认为这已经以更清洁和简单的方式完成了..
提前致谢!!