7
PEMファイルを分割する方法
注:すでに答えを見つけたので、これは実際には質問ではありませんが、ここでは簡単に見つけられなかったので、他の人に役立つように投稿します。 質問:連結されたPEMファイルをapache / mod_sslディレクティブSSLCACertificateFileによって使用されるものとして読み取る方法は? 回答(オリジナル)(ソース): cat $file|awk 'split_after==1{n++;split_after=0} /-----END CERTIFICATE-----/ {split_after=1} {print > "cert" n ".pem"}' のように末尾に空白行がある場合、空のファイルが残ることがありますopenssl pkcs7 -outform PEM -in my-chain-file -print_certs。これを防ぐには、印刷する前に行の長さを確認します。 cat $file|awk 'split_after==1{n++;split_after=0} /-----END CERTIFICATE-----/ {split_after=1} {if(length($0) > 0) print > "cert" n ".pem"}' 回答29/03/2016: @slugchewerの回答に続いてcsplit、より明確なオプションがあります: csplit -f cert- $file '/-----BEGIN CERTIFICATE-----/' '{*}'