如何编写一个在输出中运行命令某个条件的函数?

时间:2017-05-06 11:50:09

标签: python curl

我有一个curl命令,它有一些问题将数据发送到代理,所以有时它会在其失败时完美地发送数据。该命令看起来像

curl --tlsv1 --cipher ALL --connect-timeout 90 -T nint.txt  ftps://ftp.box.com/Backup/nants.txt --user "admin:pass" -x socks4://10.21.0.10:1080 -v

现在我需要编写一个执行此命令的python代码,直到输出包含Connection #0 to host ftp.box.com left intact

类似

def send_to_box(zip_name):
    curl --tlsv1 --cipher ALL --connect-timeout 90 -T nint.txt  ftps://ftp.box.com/Backup/nants.txt --user "admin:pass" -x socks4://10.21.0.10:1080  2>&1 | grep -q "Connection #0 to host ftp.box.com left intact" "
    while "Connection #0 to host ftp.box.com left intact" in os.system(curl_cmd_grep):
           print successful send the data

不确定实现此目的的最佳方式是什么

1 个答案:

答案 0 :(得分:0)

您可以使用具有TLS支持的ftputil。请在此处查看示例:Does ftputil support SSL/TLS?

要使用代理,请参阅以下问题:Proxies in Python FTP application

您还可以在Python文档中搜索:ftplib module。