前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >linux shell 获取java版本号

linux shell 获取java版本号

作者头像
10km
发布2019-08-14 10:58:49
2.5K0
发布2019-08-14 10:58:49
举报
文章被收录于专栏:10km的专栏10km的专栏

获取java版本号

代码语言:javascript
复制
$ java -version 2>&1 | sed '1!d' | sed -e 's/"//g' | awk '{print $3}'
1.8.0_222

获取java类型(openjdk)及版本号

代码语言:javascript
复制
$ java -version 2>&1 | sed '1!d' | sed -e 's/"//g' -e 's/version//'
openjdk  1.8.0_222

说明: 在shell中要获取java版本号最基本的思路就是从java -version 的输出内容中解析出版本号,但是java -version 的输出并不是输出到默认的stdout,而是stderr,所以要想从java -version 的输出解析出java版本号,就要将java -version 的输出重定向,上面脚本中2>&1就是将原本输出到stderr中的内容重定向输出到stdout,这样就可以将java -version的输出通过管道|输入到sed,awk这些工具去处理了.

代码中sed '1!d'的含义是删除除第一行外的所有内容,在这里就是只保留java -version输出的第一行内容java version "1.8.0_111" 接下来 sed -e 's/"//g'就简单了,就是删除字符串中的"号,所以上面的第一行内容进一步被处理成openjdk version 1.8.0_222(同理's/version//'是删除字符串中的version)

接下来的awk '{print $3}'就是输出空格分隔的第三段,就是最终的版本号1.8.0_222

本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2019年08月05日,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档