答网友在企业工作中实际SEHLL问题

网友的工作中SEHLL问题:
问题说明:
需要截取以下命令输出的证书编码信息:
#openssls_client-showcerts-connect192.168.0.111:443|sed-ne'/-BEGINCERTIFICATE-/,/-ENDCERTIFICATE-/p'(以下是证书的输出信息,期望:将第一个-----BEGINCERTIFICATE-----到-----ENDCERTIFICATE-----区域间的编码保存为一个文件,第二个EGINCERTIFICATE-----到-----ENDCERTIFICATE区间保存另外一个文件,同时不能用取行的方式....)命令显示的内容就是oldboy.log。
近期每周至少讲4天课,时间很紧,这里老男孩老师仅给个简单实现,其实方法很多的,对不起伙伴们了。
更多SHELL编程技术大家可学学老男孩录制的SHELL高级编程课程

http://edu.51cto.com/partner/view/id-13.html

简单解答:

[root@oldboytraining~]# cat oldboy.log
----BEGINCERTIFICATE-----
1MIIDvDCCAqSgAwIBAgIBCTANBgkqhkiG9w0BAQUFADCBgzELMAkGA1UEBhMCQ04x
EDAOBgNVBAgMB0JlaUppbmcxEDAOBgNVBAcMB0JlaUppbmcxETAPBgNVBAoMCENT
REEgSUJNMRkwFwYDVQQDDBB2bTE5OC5jbi5pYm0uY29tMSIwIAYJKoZIhvcNAQkB
FhNqdW5sdW9iakBjbi5pYm0uY29tMB4XDTEzMDkwMjAyNDE1NVoXDTE0MDkwMjAy
NDE1NVowQjELMAkGA1UEBhMCQ04xEDAOBgNVBAgMB0JlaUppbmcxETAPBgNVBAoM
CENTREEgSUJNMQ4wDAYDVQQDDAV2bTE5ODCCASIwDQYJKoZIhvcNAQEBBQADggEP
ADCCAQoCggEBANr4U+ipiJAfpmw8xTSjhsfItM9+TRWRTuLYetD3oBAb6xVOxD8T
3krBxOT0Uu98+8DytfjJr1J/48BO+A1nxvrVYYWgkgnmsggju/BRt5NBORFR+DPH
wjYtu2aULW7ZIy8eIS1BDb5Dk+Axywt3psE5MuI9gVtb7zC6uufQmC0HVS2yhzgk
e+CqPuawywvEPxAfY97k1XA43gFqWJYPs1/DY/cbVN2SgBGx3fsQAzVPQJ2c+lBk
ZbO79Ps75Ey2hlDfi/9/gMKTnVusvMOJTxh9WuMcCFQeOOTDPc7vd3Fj+XamBaOx
g3yx410OMup9JQnZnLhNm3mFa7988hTSFqcCAwEAAaN7MHkwCQYDVR0TBAIwADAs
BglghkgBhvhCAQ0EHxYdT3BlblNTTCBHZW5lcmF0ZWQgQ2VydGlmaWNhdGUwHQYD
VR0OBBYEFFUoqZIIsnS2FheA1eKdZK4WOy3rMB8GA1UdIwQYMBaAFBj6rqQtvFLI
tAXn4a8enOjjAOkeMA0GCSqGSIb3DQEBBQUAA4IBAQAz7ahoRKPvtCyU8pwahhuK
gq0DE0Qh3cACvG8cnhZdN7Y8DXiEbkZ5UZ36l5JcLLg1F5ldo/+jv2gUvWIbJm67
B0gvwTo/kSkqMQP07bSPzfpXVTTYkDI/9jjCGEtbMjaUm+Oxy7AZBrTsF3RSuD3S
QpNhQ0WDg430aRRV2LS95CNrtG7C2oaZjQrKJgFGTfv+ZIVHeogzhbdCMe2aF+xL
4TE4LLHNdOpX5j9a6eNsGcp48CEIraN04MZcMaskrys15J5EJLhw6PMcTddRn6E/
VU3ctWKhIKP02W/BMVM6JzxbuS0LZ3jGqTnZ6KKotLoxGWmtUsli/pGdbBaY7NUa
-----ENDCERTIFICATE-----
-----BEGINCERTIFICATE-----
2MIID2zCCAsOgAwIBAgIJALlfFe00vbXbMA0GCSqGSIb3DQEBCwUAMIGDMQswCQYD
VQQGEwJDTjEQMA4GA1UECAwHQmVpSmluZzEQMA4GA1UEBwwHQmVpSmluZzERMA8G
A1UECgwIQ1NEQSBJQk0xGTAXBgNVBAMMEHZtMTk4LmNuLmlibS5jb20xIjAgBgkq
hkiG9w0BCQEWE2p1bmx1b2JqQGNuLmlibS5jb20wHhcNMTMwODI3MDAzNDIxWhcN
MTQwODI3MDAzNDIxWjCBgzELMAkGA1UEBhMCQ04xEDAOBgNVBAgMB0JlaUppbmcx
EDAOBgNVBAcMB0JlaUppbmcxETAPBgNVBAoMCENTREEgSUJNMRkwFwYDVQQDDBB2
bTE5OC5jbi5pYm0uY29tMSIwIAYJKoZIhvcNAQkBFhNqdW5sdW9iakBjbi5pYm0u
Y29tMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA5j4hS8wJvvzdmmRN
Ob8VPrrwNecZU4QFbDWfkzzCDxRHoHIb8Y8OYw9EYB1wbe+CmOCwaBtIJHqhmyJ8
6zLYAt5hCn1rM4SxjZvEtpLoc2EL2bZor6eq2ta5kSnAOwhnioTivu7vwqpwOTDo
lGIsmh2qq37rm4k9+fnW8TOY/XRF5JfAIiMlhlgQqvL8//X3c4TzBse4HHtM4JCf
C2Wa2mvG9IOPFT0ugMi5bFmYn6GyfY7XO9ZnG2HSat/l2jgveUiS8zOBgf6cqb1B
EY2frkBsEfIcqkvpttPLNp/kJbJi8xEylmqxN2p0PuAG5oFA2ANZIPocyYM8dF8u
JH1qkQIDAQABo1AwTjAdBgNVHQ4EFgQUGPqupC28Usi0Befhrx6c6OMA6R4wHwYD
VR0jBBgwFoAUGPqupC28Usi0Befhrx6c6OMA6R4wDAYDVR0TBAUwAwEB/zANBgkq
hkiG9w0BAQsFAAOCAQEAz2yj+8ABofDAj/aYOre7fPmrB/oKjxLFc/d5V/gftbNa
ho1noru62d1zVcjlWNwliNEBATpA6mZFz8swxJ4AYHx1lxbAt1p98vHWmKVG8l+e
mMeSZ/VVmNU5HCgD+Yb1L//WO4Hjo74y3t/Q8VBa+tydvEA3VuK/CQlU4fFzKp2p
QkrqYTKYejr8vBZ8hSmx0w2AsztfS8R0cIPmOP4nzyiccPxyGenGWtmJbVoW+YJR
8DQfE95o4LyYYsFhpDjXPMthxyEmt5eDsVOIF4vG8qXq7r3VUpgZvt6k6GgFNuNz
fAXsIQU6b1q0NNssLfLSMOIBdNmIPT4B03m4FS4PTA==
-----ENDCERTIFICATE-----
[root@oldboytraining~]# END="-----END CERTIFICATE-----"
[root@oldboytraining~]# echo ${#END}
25
[root@oldboytraining~]# BEGIN="-----BEGIN CERTIFICATE-----"
[root@oldboytraining~]# echo ${#BEGIN}
27
[root@oldboytraining~]# cat oldboy.sh
i=1
whileread line
do
if[ ${#line} -eq 27 ];then   
echo "$line">>$i.log
elif [ ${#line} -eq 25 ];then       
echo "$line">>$i.log
((i++))
else
echo "$line">>$i.log
fi
done<oldboy.log
[root@oldboytraining~]# sh oldboy.sh
[root@oldboytraining~]# cat 1.log
----BEGINCERTIFICATE-----
1MIIDvDCCAqSgAwIBAgIBCTANBgkqhkiG9w0BAQUFADCBgzELMAkGA1UEBhMCQ04x
EDAOBgNVBAgMB0JlaUppbmcxEDAOBgNVBAcMB0JlaUppbmcxETAPBgNVBAoMCENT
REEgSUJNMRkwFwYDVQQDDBB2bTE5OC5jbi5pYm0uY29tMSIwIAYJKoZIhvcNAQkB
FhNqdW5sdW9iakBjbi5pYm0uY29tMB4XDTEzMDkwMjAyNDE1NVoXDTE0MDkwMjAy
NDE1NVowQjELMAkGA1UEBhMCQ04xEDAOBgNVBAgMB0JlaUppbmcxETAPBgNVBAoM
CENTREEgSUJNMQ4wDAYDVQQDDAV2bTE5ODCCASIwDQYJKoZIhvcNAQEBBQADggEP
ADCCAQoCggEBANr4U+ipiJAfpmw8xTSjhsfItM9+TRWRTuLYetD3oBAb6xVOxD8T
3krBxOT0Uu98+8DytfjJr1J/48BO+A1nxvrVYYWgkgnmsggju/BRt5NBORFR+DPH
wjYtu2aULW7ZIy8eIS1BDb5Dk+Axywt3psE5MuI9gVtb7zC6uufQmC0HVS2yhzgk
e+CqPuawywvEPxAfY97k1XA43gFqWJYPs1/DY/cbVN2SgBGx3fsQAzVPQJ2c+lBk
ZbO79Ps75Ey2hlDfi/9/gMKTnVusvMOJTxh9WuMcCFQeOOTDPc7vd3Fj+XamBaOx
g3yx410OMup9JQnZnLhNm3mFa7988hTSFqcCAwEAAaN7MHkwCQYDVR0TBAIwADAs
BglghkgBhvhCAQ0EHxYdT3BlblNTTCBHZW5lcmF0ZWQgQ2VydGlmaWNhdGUwHQYD
VR0OBBYEFFUoqZIIsnS2FheA1eKdZK4WOy3rMB8GA1UdIwQYMBaAFBj6rqQtvFLI
tAXn4a8enOjjAOkeMA0GCSqGSIb3DQEBBQUAA4IBAQAz7ahoRKPvtCyU8pwahhuK
gq0DE0Qh3cACvG8cnhZdN7Y8DXiEbkZ5UZ36l5JcLLg1F5ldo/+jv2gUvWIbJm67
B0gvwTo/kSkqMQP07bSPzfpXVTTYkDI/9jjCGEtbMjaUm+Oxy7AZBrTsF3RSuD3S
QpNhQ0WDg430aRRV2LS95CNrtG7C2oaZjQrKJgFGTfv+ZIVHeogzhbdCMe2aF+xL
4TE4LLHNdOpX5j9a6eNsGcp48CEIraN04MZcMaskrys15J5EJLhw6PMcTddRn6E/
VU3ctWKhIKP02W/BMVM6JzxbuS0LZ3jGqTnZ6KKotLoxGWmtUsli/pGdbBaY7NUa
-----ENDCERTIFICATE-----
[root@oldboytraining~]# cat 2.log
-----BEGINCERTIFICATE-----
2MIID2zCCAsOgAwIBAgIJALlfFe00vbXbMA0GCSqGSIb3DQEBCwUAMIGDMQswCQYD
VQQGEwJDTjEQMA4GA1UECAwHQmVpSmluZzEQMA4GA1UEBwwHQmVpSmluZzERMA8G
A1UECgwIQ1NEQSBJQk0xGTAXBgNVBAMMEHZtMTk4LmNuLmlibS5jb20xIjAgBgkq
hkiG9w0BCQEWE2p1bmx1b2JqQGNuLmlibS5jb20wHhcNMTMwODI3MDAzNDIxWhcN
MTQwODI3MDAzNDIxWjCBgzELMAkGA1UEBhMCQ04xEDAOBgNVBAgMB0JlaUppbmcx
EDAOBgNVBAcMB0JlaUppbmcxETAPBgNVBAoMCENTREEgSUJNMRkwFwYDVQQDDBB2
bTE5OC5jbi5pYm0uY29tMSIwIAYJKoZIhvcNAQkBFhNqdW5sdW9iakBjbi5pYm0u
Y29tMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA5j4hS8wJvvzdmmRN
Ob8VPrrwNecZU4QFbDWfkzzCDxRHoHIb8Y8OYw9EYB1wbe+CmOCwaBtIJHqhmyJ8
6zLYAt5hCn1rM4SxjZvEtpLoc2EL2bZor6eq2ta5kSnAOwhnioTivu7vwqpwOTDo
lGIsmh2qq37rm4k9+fnW8TOY/XRF5JfAIiMlhlgQqvL8//X3c4TzBse4HHtM4JCf
C2Wa2mvG9IOPFT0ugMi5bFmYn6GyfY7XO9ZnG2HSat/l2jgveUiS8zOBgf6cqb1B
EY2frkBsEfIcqkvpttPLNp/kJbJi8xEylmqxN2p0PuAG5oFA2ANZIPocyYM8dF8u
JH1qkQIDAQABo1AwTjAdBgNVHQ4EFgQUGPqupC28Usi0Befhrx6c6OMA6R4wHwYD
VR0jBBgwFoAUGPqupC28Usi0Befhrx6c6OMA6R4wDAYDVR0TBAUwAwEB/zANBgkq
hkiG9w0BAQsFAAOCAQEAz2yj+8ABofDAj/aYOre7fPmrB/oKjxLFc/d5V/gftbNa
ho1noru62d1zVcjlWNwliNEBATpA6mZFz8swxJ4AYHx1lxbAt1p98vHWmKVG8l+e
mMeSZ/VVmNU5HCgD+Yb1L//WO4Hjo74y3t/Q8VBa+tydvEA3VuK/CQlU4fFzKp2p
QkrqYTKYejr8vBZ8hSmx0w2AsztfS8R0cIPmOP4nzyiccPxyGenGWtmJbVoW+YJR
8DQfE95o4LyYYsFhpDjXPMthxyEmt5eDsVOIF4vG8qXq7r3VUpgZvt6k6GgFNuNz
fAXsIQU6b1q0NNssLfLSMOIBdNmIPT4B03m4FS4PTA==
-----ENDCERTIFICATE-----


你可能感兴趣的:(老男孩培训,shell编程实战)