Oracle 如何将Tnsping输出存储在变量中?
从shell命令启动: tnsping myDB 我获得输出: 正常(1毫秒) 如何将此输出存储在变量中,以便测试是否正常? 但是,你说你想检查结果。如果存储该字符串输出,则需要对其进行解析以仅查找“OK”(因为ping时间可能不同),并处理横幅信息等(尽管这相对容易) 查看Oracle 如何将Tnsping输出存储在变量中?,oracle,shell,tnsping,Oracle,Shell,Tnsping,从shell命令启动: tnsping myDB 我获得输出: 正常(1毫秒) 如何将此输出存储在变量中,以便测试是否正常? 但是,你说你想检查结果。如果存储该字符串输出,则需要对其进行解析以仅查找“OK”(因为ping时间可能不同),并处理横幅信息等(尽管这相对容易) 查看tnsping命令的返回代码比查看其输出更简单: tnsping myDB echo $? 您可以测试$?的值。如果ping正常,那么它将为零;否则它将是1 你还没有说你想对测试结果做什么。如果要显示错误(如果存在错误),
tnsping
命令的返回代码比查看其输出更简单:
tnsping myDB
echo $?
您可以测试$?
的值。如果ping正常,那么它将为零;否则它将是1
你还没有说你想对测试结果做什么。如果要显示错误(如果存在错误),但如果成功则什么也不显示,则可以将两者结合使用:
RESULT=$( tnsping myDB )
if [[ $? -ne 0 ]]; then
printf "Ping failed, output was\n\n"
printf "%s\n" "${RESULT}"
fi