Mongo shell退出值由JavaScript脚本控制

时间:2018-02-06 10:12:43

标签: javascript bash mongodb

我有一个bash脚本(task.sh),它通过mongo shell执行JavaScript脚本(clean.js)。 clean.js的目的是对数据库进行一些检查,如果检查没问题,则删除它。

task.sh脚本的内容是:

mongo localhost clean.js
if [ $? -eq 0 ]
then
  echo "Database was removed"
else
  echo "Database check failed"
fi

问题是我不知道如何从mongo localhost clean.js控制clean.js命令的退出值(我的意思是,bash在$? variable中放置的退出值)。

请问这个例子的帮助吗?谢谢!

1 个答案:

答案 0 :(得分:2)

您可以使用带有特定退出代码的 quit() 功能来实现此目的:

script.js

if [ $? -eq 0 ]
then
  echo "Database was removed"
  quit(0)
else
  echo "Database check failed"
  quit(1)
fi

退出代码将存储在$?变量:

> mongo script.js --quiet
> echo $?
0