스크립트를 실행하여 IHS 및 JAVA 버전을 얻습니다.
/ihs_home/HTTPServer/bin/versionInfo.sh
IBM HTTP Server 제품의 다양한 버전에 대해 다양한 출력을 인쇄합니다.
출력의 발췌 예는 다음과 같습니다.
.....
Installed Product
--------------------------------------------------------------------------------
Name IBM SDK, Java Technology Edition, Version 8
Version 8.0.3.0
ID JAVA8
Build Level pxa6480sr3ifix-20160615_01
Build Date 06/15/16
Architecture x86-64 (64 bit)
Installed Product
--------------------------------------------------------------------------------
Name IBM HTTP Server for WebSphere Application Server
Version 9.0.5.3
ID IHS
Build Level f5032008.04
Build Date 2/26/20
Package com.ibm.websphere.IHS.v90_9.0.5003.20200226_0941
Architecture x86-64 (64 bit)
Installed Features Core runtime
--------------------------------------------------------------------------------
.....
위 출력에서는 JDK 버전이 WEBSPHERE(IHS) 버전 앞에 표시됩니다.
불행하게도 이 IBM 제품의 버전에 따라 출력이 다를 수 있으며 WEBSPHERE(IHS) 버전 이후에 JDK 버전이 표시될 수 있습니다.
그러므로,
/ihs_home/HTTPServer/bin/versionInfo.sh | grep -v Directory | grep -v reporter | grep -i version
Output:
Version 8.0.3.0
Version 9.0.5.3
그러나 첫 번째 버전이 WEBSPHERE(IHS)인지 JDK인지는 확실하지 않습니다.
아래 버전 항목 이 포함된 버전 이전 행이 websphere(ihs)인지 확인해야 하며 WebSphere
, 그렇지 않으면 JDK 버전입니다.
--------------------------------------------------------------------------------
Name IBM HTTP Server for WebSphere Application Server
Version 9.0.5.3
스크립트를 사용하여 Websphere 및 JDK 버전을 확인하는 방법 versionInfo.sh
.
누구든지 조언을 해줄 수 있나요?
답변1
귀하의 질문이 명확하지 않지만 입력에 레이블/이름-값 쌍이 있을 때마다 먼저 이러한 쌍의 배열을 생성하는 것이 가장 좋습니다( tag2val[]
아래). 그런 다음 원하는 것을 테스트 및/또는 인쇄할 수 있습니다. 좋아하지만 원하는 순서대로 좋아합니다. 예를 들면 다음과 같습니다.
$ cat file | awk -v OFS='\t' '
{ tag=val=$0; sub(/[[:space:]].*/,"",tag); sub(/[^[:space:]]*[[:space:]]+/,"",val); tag2val[tag]=val }
tag == "Version" { print val, tag2val["Name"] }
' file
8.0.3.0 IBM SDK, Java Technology Edition, Version 8
9.0.5.3 IBM HTTP Server for WebSphere Application Server
.
$ cat file | awk -v OFS='\t' '
{ tag=val=$0; sub(/[[:space:]].*/,"",tag); sub(/[^[:space:]]*[[:space:]]+/,"",val); tag2val[tag]=val }
tag == "Version" { print val, (tag2val["Name"] ~ /WebSphere/ ? "WebSphere" : "JDK") }
' file
8.0.3.0 JDK
9.0.5.3 WebSphere
위의 코드는 cat file
질문에 제공한 내용을 입력으로 사용하는 대신 내 시스템에 없는 것을 사용하여 실행됩니다./ihs_home/HTTPServer/bin/versionInfo.sh
$ cat file
.....
Installed Product
--------------------------------------------------------------------------------
Name IBM SDK, Java Technology Edition, Version 8
Version 8.0.3.0
ID JAVA8
Build Level pxa6480sr3ifix-20160615_01
Build Date 06/15/16
Architecture x86-64 (64 bit)
Installed Product
--------------------------------------------------------------------------------
Name IBM HTTP Server for WebSphere Application Server
Version 9.0.5.3
ID IHS
Build Level f5032008.04
Build Date 2/26/20
Package com.ibm.websphere.IHS.v90_9.0.5003.20200226_0941
Architecture x86-64 (64 bit)
Installed Features Core runtime
--------------------------------------------------------------------------------
.....