我對你的情況回答是這樣的命令:
ls /etc/pki/tls/certs/cert*.pem | xargs -L1 openssl x509 -noout -enddate -in
說明
在第一步中,我把我的證件,我想分析的列表。例如在我的情況下,它可能是這樣的:
[[email protected] certs]# ls -1 */*.crt
ewsport.org/ewsport.org.crt
hxpro.cz/hxpro.crt
jaguars.cz/jaguars.crt
koudelka.photography/koudelka.photography.crt
unicycle-hockey.cz/unicycle-hockey.cz.crt
unipragga.cz/unipragga.cz.crt
下一步,我想要從他們每個人獲得到期日期。
[[email protected] certs]# openssl x509 -noout -enddate -in hxpro.cz/hxpro.crt
notAfter=Apr 24 11:29:21 2017 GMT
現在我可以使用xargs將第一條命令的輸出發送到第二條命令。
[[email protected] certs]# ls -1 */*.crt | xargs -L1 openssl x509 -noout -enddate -in
notAfter=Mar 31 15:08:20 2017 GMT
notAfter=Apr 24 11:29:21 2017 GMT
notAfter=Mar 23 21:23:42 2017 GMT
notAfter=Apr 24 11:50:32 2017 GMT
notAfter=Dec 11 16:32:41 2016 GMT
notAfter=Mar 20 19:44:17 2017 GMT
我使用了選項-L1,因爲openssl命令只需要一個-in文件作爲輸入。
我已經設法使用一個文件名數組遍歷for循環。如果有更好的工作,請分享。謝謝 – Zeeshan 2012-04-05 15:51:01