Linux 如何grep搜索字符串但从结果中忽略字符串
我正在尝试使用以下命令查找SSL证书的过期日期:Linux 如何grep搜索字符串但从结果中忽略字符串,linux,string,bash,search,grep,Linux,String,Bash,Search,Grep,我正在尝试使用以下命令查找SSL证书的过期日期: openssl s_client -connect ${CERT}:443 </dev/null 2>&1 | openssl x509 -text | grep "Not After" 我如何删除结果中的“notafter:”部分并仅显示: Apr 14 10:06:09 2018 GMT 感谢您的帮助 只需使用lookback来摆脱它: $ grep -Po '(?<=Not After : ).*' <&
openssl s_client -connect ${CERT}:443 </dev/null 2>&1 | openssl x509 -text | grep "Not After"
我如何删除结果中的“notafter:”部分并仅显示:
Apr 14 10:06:09 2018 GMT
感谢您的帮助 只需使用lookback来摆脱它:
$ grep -Po '(?<=Not After : ).*' <<< "Not After : Apr 14 10:06:09 2018 GMT"
Apr 14 10:06:09 2018 GMT
$grep-Po'(?一种简单的方法:-
openssl s_client -connect ${CERT}:443 </dev/null 2>&1 | openssl x509 -text | grep "Not After" | sed 's/Not After : //g'
希望这会对您有所帮助。为什么/g
?如果您只想更换一次,则无需使用全局标志。@Abhijit Pritam谢谢,这很有效!为什么grep、sed就足够了?谢谢您的帮助,但是-p标志对我不起作用。现已修复
openssl s_client -connect ${CERT}:443 </dev/null 2>&1 | openssl x509 -text | grep "Not After" | sed 's/Not After : //g'
Apr 14 10:06:09 2018 GMT