2017-07-13 47 views
0

我试图执行下面的python脚本来获取远程服务器中的文件数量。获取日期值的Python脚本

这里的问题是最后一个文件夹是基于日期创建的。为获取日期值而创建的grep命令在远程服务器中不会​​转换为日期。注释的查找代码将运行良好,但我期待将日期作为参数传递。任何帮助表示赞赏。

#!/usr/local/b2s/bin/python 

import paramiko 
import datetime 

now = datetime.datetime.now()- datetime.timedelta(days = 1) 
date= now.strftime("%Y%m%d") 

print "date is" +date 

client=paramiko.SSHClient() 
client.set_missing_host_key_policy(paramiko.AutoAddPolicy()) 
client.connect('host', username='username') 

# grepCommand='find /usr/local/folder1/folder2/folder3/20170712_060013 -type f |wc -l' 
grepCommand='find /usr/local/folder1/folder2/folder3/${date}_* -type f |wc -l' 

stdin,stdout,stderr = client.exec_command(grepCommand) 
data=stdout.readlines() 
for i in data: 
     print(i.encode('ascii','replace')) 

# print data 

client.close() 

回答

0

如果date包含你希望它出现的日期,只是将该值插入您的grepCommand字符串是这样的:

grepCommand = 'find /usr/local/folder1/folder2/folder3/{}_* -type f |wc -l'.format(date) 
+0

这个工作,非常感谢 – Arun