2016-06-07 73 views
-1

我是新進入蟒蛇的文件列表中選擇正確的中間證書類型和我想要做的事,如:查找使用python

for i in $(ls -1 *.crt) ; do echo $i ; openssl x509 -noout -text -in $i | grep -i telesec ; done 

找出中間證書的類型。

我設法得到文件列表,但我不知道如何繼續使用openssl命令。也許與子進程或OpenSSL.crypto?

#!/usr/bin/env python 
import subprocess 
import glob 

def filelist(): 

    for filename in glob.iglob('*.crt'): 
     print filename 

filelist() 

非常感謝您的幫助!

+0

你試過了'subprocess'版本,發現它不工作? –

回答

0

這裏有一種方法:

#!/usr/bin/env python 
import subprocess 
import glob 

def openssl_509(path): 
    rval = subprocess.check_output('openssl x509 -noout -text -in {0}'.format(path) 
    return rval 

def main(): 
    for filename in glob.iglob('*.crt'): 
     text = openssl_509(filename) 
     if 'telesec' in text: 
      print filename 

if __name__ == '__main__': 
    main()