javaversion为stderr输出怎么解决-创新互联

本篇内容主要讲解“java version为stderr输出怎么解决”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“java version为stderr输出怎么解决”吧!

创新互联专注于石棉企业网站建设,成都响应式网站建设公司,电子商务商城网站建设。石棉网站建设公司,为石棉等地区提供建站服务。全流程按需定制设计,专业设计,全程项目跟踪,创新互联专业和态度为您提供的服务

现象

    今天写一个初始化服务器脚本,想获取java版本,结果使用java -version一直无法使用sed与awk处理,经过实验,发现

java -version输出为stderr,无法处理。

测试

# 将命令输出2 stderr与1 stdout分别输出到指定文件,查看文件内容,验证java -version输出为stderr
[root@template yum.repos.d]# java -version 2>/tmp/java_version_stderr.out 1>/tmp/java_stdout.out
[root@template yum.repos.d]# cat /tmp/java_version_stderr.out 
openjdk version "1.8.0_181"
OpenJDK Runtime Environment (build 1.8.0_181-b13)
OpenJDK 64-Bit Server VM (build 25.181-b13, mixed mode)
[root@template yum.repos.d]# cat /tmp/java_stdout.out 
#可以看到java -version输出为stderr,所以我们如果想继续处理java -version输出,需要重定向到stdout

解决

java_ver=`java -version 2>&1 | sed '1!d'|sed 's/"//g'|awk '{print $NF}'|awk -F'.' '{print $1$2}'`

到此,相信大家对“java version为stderr输出怎么解决”有了更深的了解,不妨来实际操作一番吧!这里是创新互联网站,更多相关内容可以进入相关频道进行查询,关注我们,继续学习!


名称栏目:javaversion为stderr输出怎么解决-创新互联
URL链接:http://abwzjs.com/article/jsiie.html