shell脚本mongodb
A. (shell脚本)特殊分隔符文本文件导入MongoDB
本篇文章简单介绍如何将文本数据使用shell脚本导入MongoDB。
过程如下:
${str//'!^'/','} 字符替换,将 !^ 替换为 , ;
< 表示从一个文件读内容;
> 表示将内容写进一个文件,如果该文件不存在,会自动新建该文件,因此该操作会覆盖文件之前内容;
>> 同 > ,追加模式,但是该操作不会覆盖之前文件内容。
该脚本使用awk将数据转为json格式,尝试使用 -F '!^' 做为分割符时,数据处理出现丢失,错误的现象,使用 -F ',' 时,数据无误。
本次处理的文本数据分割符为特殊分割符 !^ ,因此将分隔符替换为 , 。
-vq=' " ' 设置一个变量 q = " 。
function··· 为数据处理过程,格式化为json。
EOF 之间可以执行mongo的任意操作命令。
此处删除了集合名为 ${txt_name} 的集合(无论该集合是否存在,该操作不会影响脚本执行)。
mongoimport 将文件数据导入MongoDB,文件可以为 json 或 csv 格式,此处使用的是json文件。
rm -rf file 强制删除文件 file
rm shell 删除文件(夹)的命令
-rf 该参数表示不询问,强制删除,重要文件删除,不推荐使用该参数。
B. 如何通过shell脚本操作MongoDB
用过echo加管道符将命令传入mongo的命令行
echo "db.serverStatus().mem" | mongo admin -u$user -p$pw
如果是多条命令
mongo admin -u$user -p$pw <<EOF
命令
命令
EOF
$user 用户
$pw 密码
如果没有设置用户认证,那么后面的-u,-p都不用加。
C. 如何通过shell脚本操作MongoDB
基于文本文档(Markdown) 设想好需要的基本需要的表、字段、类型;
使用 Rails Migration 随着功能的开发逐步创建表;
随着细节功能的开发、需求,逐步增加字段,删除字段,或者调整字段类型;
第一个 Release 的时猜猛候清理 Migrations 合并成一个;
随着后期的改动,逐步增加、修改、改兆磨删除字段或表。
基本上我的所有核斗项目都是这么搞的,这和项目是否复杂无关。
所以我前面为什么说思路需要转变。
D. 怎样在linux的shell脚本中连接mongodb插入
进入到你的MongoDB安装目录,启动的命令是:./mongod,客户端连接的命令是:./mongo就可以了,希望是你想神清凯要的答案,也可以关注PHP程序员,正携雷雪松的个游唤人博客,有很多MongoDB的介绍。
E. 如何通过shell脚本操作MongoDB
用过echo加管道符将命令传入mongo的命桐知令行
echo "db.serverStatus().mem" | mongo admin -u$user -p$pw
如果是多条命令
mongo admin -u$user -p$pw <局让消<EOF
命令
命令
EOF
$user 用户
$pw 密码
如果没有设置用户认证,那么后面的滑简-u,-p都不用加。
F. 怎样在linux的shell脚本中连接mongodb插入
要在shell中连接数据库,首先要在连接数据的机器上安装mongodb的客户端才可以。客户端的安装在这里不再重复,自己网络一下。
连接mongodb的命令如下:
/home/test/mongodb/mongodb-2.2.3/bin/mongo 127.0.0.1:8888
假设未设置用户名密码,直接通过该命令就可让罩蠢以连接,如果有用户名密码,则需要输入。连接成功后会有一个默认连接的数据库。
mongodb常用命令:
查闷枣看数据库命令:
show dbs;
坦陪查看集合命令:
show collections;
切换数据库:
use databaseName;
查询数据:
db.集合名.find()
插入数据:
db.集合名.insert({name:'test',age:1});
删除:
db.test.remove();
sql="db.test.insert({name:'test',age:1});"//定义执行的sqlecho
"$sql"|/home/test/mongodb/mongodb-2.2.3/bin/mongo 127.0.0.1:8888/test
--shell
注意,echo命令中的格式必须这样写,管线命令后面的是是数据库安装地址 然后是ip:端口号,斜线后是数据库名称,--shell表示通过shell交互!
G. 怎样在linux的shell脚本中连接mongodb插入
要在shell中连接数据库,首先要在连接数据的机器上安装mongodb的客户端才可以。客户端的安装在这里不再重复,自己网络一下。
连接mongodb的命令如下:
/home/test/mongodb/mongodb-2.2.3/bin/mongo 127.0.0.1:8888
假设未设置用户名密码,直接通过该命令就可以连接,如果有用户名密码,则需要输入。连接成功后会有一个默认连接的数据库。
mongodb常用命令:
查看数据库命令:
show dbs;
查看集合命令:
show collections;
切换数据库:
use databaseName;
查询数据:
db.集合名.find()
插入数据:
db.集合名.insert({name:'test',age:1});
删除:
db.test.remove();
sql="db.test.insert({name:'test',age:1});"//定义执行的sqlecho
"$sql"|/home/test/mongodb/mongodb-2.2.3/bin/mongo 127.0.0.1:8888/test
--shell
注意,echo命令中的格式必须这样写,管线命令后面的是是数据库安装地址 然后是ip:端口号,斜线后是数据库名称,--shell表示通过shell交互!
H. 怎样在linux的shell脚本中连接mongodb插入
步粗粗骤:打老竖开shell
1: 输入mongo
2:输入use 库名
3:db.集合名.save({name:'test'岩含镇}
I. 怎样在linux的shell脚本中连接mongodb插入
使用驱动吧, 或者是使用自动化编程 这个都很好滚巧搞定的,不戚闷过就是逻辑复杂了点。 如果日高备弯后有需要的话, 能指教一下的。 LOOK my 网名, OK? Please!!