与mongodb交互的Cli工具

mongocat的Python项目详细描述


蒙古特

https://img.shields.io/pypi/v/mongocat.svghttps://img.shields.io/travis/DaniloZZZ/mongocat.svgDocumentation StatusUpdates

与mongodb交互的Cli工具

概述

将新文档写入集合。在

$ exportMONGOCAT_URL='mongodb://<username>:<password>@your-mongo-host'
$ mongocat -W -d tensim graphs
foo: bar                                # enter your object in minified yaml
5ec0a27324ec53bd2464c074                # prints object id on success
foo: baz
5ec0a27a24ec53bd2464c075

阅读收藏中的文档

^{pr2}$

用法

$ mongocat --help
Usage: mongocat [OPTIONS] COLLECTION

  Read/write to mongodb COLLECTION.

Options:
  -R, --read
  -W, --write
  -p, --parser [json|yaml]
  -u, --url TEXT            MongoDB URI. format:
                            mongodb://[username:password@]host1[:port1]...

  -d, --database TEXT       Database name
  --help                    Show this message and exit.

结合unix的强大功能

将正在运行的进程转储到数据库

$ ps | jc --ps | jq -cM '.[]'| mongocat -WR -d tensim processes
5ec0aeef4814de15eb742155
5ec0aeef4814de15eb742156
5ec0aeef4814de15eb742157
5ec0aeef4814de15eb742158
5ec0aeef4814de15eb742159
{'_id': ObjectId('5ec0aeef4814de15eb742155'), 'pid': 195657, 'tty': 'pts/8', 'time': '00:01:05', 'cmd': 'fish'}{'_id': ObjectId('5ec0aeef4814de15eb742156'), 'pid': 396223, 'tty': 'pts/8', 'time': '00:00:00', 'cmd': 'ps'}{'_id': ObjectId('5ec0aeef4814de15eb742157'), 'pid': 396224, 'tty': 'pts/8', 'time': '00:00:00', 'cmd': 'jc'}{'_id': ObjectId('5ec0aeef4814de15eb742158'), 'pid': 396225, 'tty': 'pts/8', 'time': '00:00:00', 'cmd': 'jq'}{'_id': ObjectId('5ec0aeef4814de15eb742159'), 'pid': 396226, 'tty': 'pts/8', 'time': '00:00:00', 'cmd': 'mongocat'}

直接卷曲到DB

$ curl 'https://api.github.com/repos/DaniloZZZ/mongocat/commits?per_page=5'|\
 jq -cM '.[] | {msg: .commit.message, name: .commit.committer.name}'|\
 mongocat -WR -d tensim commits
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                                                 Dload  Upload   Total   Spent    Left  Speed
100111451001114500476280 --:--:-- --:--:-- --:--:-- 47628
5ec0aa4ac6ddf6dc2bf2def9
5ec0aa4ac6ddf6dc2bf2defa
5ec0aa4ac6ddf6dc2bf2defb
{'_id': ObjectId('5ec0aa4ac6ddf6dc2bf2def9'), 'msg': 'First working version', 'name': 'Danil Lykov'}{'_id': ObjectId('5ec0aa4ac6ddf6dc2bf2defa'), 'msg': 'upd deps', 'name': 'Danil Lykov'}{'_id': ObjectId('5ec0aa4ac6ddf6dc2bf2defb'), 'msg': 'init', 'name': 'Danil Lykov'}
使用的工具:

待办事项

  • []禁止打印添加的文档的选项
  • []查找过滤文档的命令,即mongo grep
  • []使用stdin中的ID删除文档。删除一些:mongocat --find 'blah' | mongocat --delete

学分

此包是用Cookiecutteraudreyr/cookiecutter-pypackage项目模板创建的。在

历史

  • PyPI的第一个版本。在

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
带Maven的Eclipse Java存储库:缺少工件:compile   java如何以编程方式停止RMI服务器并通知所有客户端   java Roboguice抛出ClassNotFoundException:AnnotationDatabaseImpl   java为什么lucene 4.0删除IndexWriter类的两个构造函数?   nls如何避免java项目上不需要的日志消息?   测试无法在Selenium Webdriver(java)中定位iframe   使用XML的java servlet   java如何使用jxl用****屏蔽单元格   java使用SQLite从数据库中选择“没有这样的列”   导入扫描程序后出现java编译错误   插入查询的java空指针异常   使用创建PostgreSQL数据库。Java应用中的sql脚本   java使用jsoup将HTML解析为格式化的明文