rocket-cli
Version:
Pure command line tool to replace Baidu('百毒') NetDisk or other NetDisk with this COOL shit!
132 lines (89 loc) • 3.52 kB
Markdown
Rocket
==================
[](https://travis-ci.org/KevinOfNeu/rocket)
[]()

Self host netdist, pure command line tool to to sync files to Qiniu cloud.
## Features
- Fully command line operation!
- 100% self host.
- Support custom storage provider with Qiniu(七牛).
- Support index files with regex expression.
- Expressive command lines
- Easy config and use
- ...
## Screenshots
Soon!
## Installation & Preparation
`$ brew install node`
### 1. Register Qiniu(七牛) storage provider
[Register a free Qiniu account](http://www.qiniu.com/). Then create a new bucket.


Take bucket name down, then get accessKey and secretKey.

Finally, get your domain:

Take accessKey, secretKey domain and bucket name down, we will use it when config rocket :P.
### 2. CLI
`$ npm install -g rocket-cli`
After installation, type:
`$ rocket -h`
Succeed if you see the following tips.
```
Usage: rocket [options] [command]
Commands:
init [options] Init config file
config [options] [show] Config Qiniu bucket, domain, access key and secret key
add [options] Add dir or files to index
push [options] Push files to Qiniu cloud
ls [options] List files from local index
pull [options] <key> Pull file from Qiniu cloud
Options:
-h, --help output usage information
-V, --version output the version number
```
## Commands & Usage
### Init config file
`$ rocket init`
If the config file already exists, you can use `-o` or `-overwrite` options to overwrite the old one.
The config file locates at `~/.rocket.json`.
### Config storage provider
`$ rocket config -b <your bucket name> -a <your accessKey> -s <your secretKey> -d <domain>`
### Show config
List your cnfiguration.
`$ rocket config show`
### Add files to local index
`$ rocket add -d <directory> -r -f <regex expression>`
`-r` means recursively add files in sub directories.
`-f` can set filters using regex expression, use `.` for all files.
### Push files in local index to cloud
`$ rocket push -m [max upload workers. defailt = 5]`
`-m` set the maximum number of upload workers.
### List all indexed files
`$ rocket ls -o [offset] -l [limit]`
You can use `-o` and `-l` to set proper offset and limit if there are too much files in local index.
### Pull
`$ rocket pull -d [destination] <key>`
This command will download file searched by key to destination directory, default directory is where this file uploaded.
## How dose it work?
*SOON!*
## TODO
- [x] Add timestamp when upload
- [x] Pull files to local(with default localPath).
- [ ] Examples & Articles
- [ ] Add rocket restore command(next version)
- [ ] Support multi config file.
- [x] Some default params.
- [x] Support pull file(s) to certain directory.
- [ ] Support multi object storage provider.
- [ ] Code refactor.
- [ ] Test case needed.
## Release Note
- [0.0.6] Add pull files function; Remove unneed command; Add show config operation; Add timestamp;
## Contribute
PR and issues are welcomed! Join and make it better!
## Info/Support
Email kevin@bless4.me for support!
## License
[MIT](LICENSE)