#!/bin/bash
command_exists() {
command -v "$@" > /dev/null 2>&1
}
main() {
flag=0
# 宿主机检查
java_ps=$(ps -ef | grep java | grep -v grep | awk '{ print $2 }')
java_version=$(java -version 2>&1 | grep version | sed -e 's/"//g' | awk '{print $3}')
if [ -n "$java_ps" ];then
if [ -n "$java_version" ];then
if [[ $java_version == 1.8* ]];then
echo ""
else
flag=1
echo "java version $java_version exists"
fi
fi
fi
# 容器检查
if command_exists docker; then
for cid in $(docker ps --format "{{.ID}}"); do
local j_version=$(docker exec -i $cid /bin/bash -c 'java -version 2>&1' | grep version | sed -e 's/"//g' | awk '{print $3}')
if [ -n "$j_version" ];then
if [[ $j_version == 1.8* ]];then
echo "1"
else
flag=1
echo "id: "$cid" have jdk:"$j_version
fi
fi
done
fi
if [ $flag -eq 0 ];then
echo "safe"
fi
}
main