Chinaunix首页 | 论坛 | 博客
  • 博客访问: 692720
  • 博文数量: 63
  • 博客积分: 1327
  • 博客等级: 中尉
  • 技术积分: 2022
  • 用 户 组: 普通用户
  • 注册时间: 2012-05-19 18:39
文章分类

全部博文(63)

文章存档

2013年(3)

2012年(60)

分类: Mysql/postgreSQL

2012-07-27 21:51:31

第十四章 命令行操作

MongoDB shell不仅仅是一个交互式的shell,它也支持执行指定javascript文件,也支持执行指定的命令片断。

 

有了这个特性,就可以将MongoDB与linux shell完美结合,完成大部分的日常管理和维护工作。

通过eval参数执行指定语句

例如,需要查询test库的t1表中的记录数有多少,常用方法如下:

[root@localhost bin]# ./mongo test

MongoDB shell version: 1.8.1

connecting to: test

> db.t1.count()

7

 

通过命令行eval参数直接执行语句:

[root@localhost bin]# ./mongo test --eval "printjson(db.t1.count())"

MongoDB shell version: 1.8.1

connecting to: test

7

执行指定文件中的内容

如果涉及到很多的操作后,才能得到结果,那么用eval的方式来做的话是不可能完成的,那么更灵活的执行指定文件的方式就派上用场了。例如我们仍然要查看test库t1表中的记录数:

 

t1_count.js就是我们要执行的文件,里面的内容如下

[root@localhost bin]# cat t1_count.js

var totalcount = db.t1.count();

printjson('Total count of t1 is :  ' + totalcount);

printjson('-----------------------');

 

下面我们将执行这个文件

[root@localhost bin]# ./mongo t1_count.js

MongoDB shell version: 1.8.1

connecting to: test

"Total count of t1 is :  7"

"-----------------------"

[root@localhost bin]#

大家可以看到最终得到t1表的记录数 7,那么一些不必要的说明性文字我们要是不希望出现该怎么办呢?

 

[root@localhost bin]# ./mongo --quiet  t1_count.js

"Total count of t1 is :  7"

"-----------------------"

[root@localhost bin]#

通过指定quiet参数,即可以将一些登录信息屏蔽掉,这样可以让结果更清晰。

阅读(3111) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~