All Projects → qingstor → qsctl

qingstor / qsctl

Licence: Apache-2.0 license
Advanced command line tool for QingStor Object Storage.

Programming Languages

go
31211 projects - #10 most used programming language
Makefile
30231 projects

Projects that are alternatives of or similar to qsctl

qingstor-api-specs
Specifications of QingStor APIs.
Stars: ✭ 14 (-36.36%)
Mutual labels:  qingstor
qsftpd
A FTP server that persists all data to QingStor Object Storage.
Stars: ✭ 21 (-4.55%)
Mutual labels:  qingstor
go-storage
A vendor-neutral storage library for Golang: Write once, run on every storage service.
Stars: ✭ 387 (+1659.09%)
Mutual labels:  qingstor
qscamel
qscamel is a command line tool to migrate data between different endpoint efficiently.
Stars: ✭ 34 (+54.55%)
Mutual labels:  qingstor

qsctl

Build Status GoDoc Go Report Card codecov localized License Join the Chat

中文文档

qsctl is intended to be an advanced command line tool for QingStor, it provides powerful unix-like commands to let you manage QingStor resources just like files on local machine.

Installation

Binary

Visit https://github.com/qingstor/qsctl/releases to get latest releases.

Getting Started

Configure via initialization wizard

Configure manually

To use qsctl, there must be a configuration file , for example

access_key_id: 'ACCESS_KEY_ID_EXAMPLE'
secret_access_key: 'SECRET_ACCESS_KEY_EXAMPLE'

The configuration file is ~/.qingstor/config.yaml by default, it also can be specified by the option -c /path/to/config.

You can also config other option like host , port and so on, just add lines below into configuration file, for example

host: 'qingstor.com'
port: 443
protocol: 'https'
connection_retries: 3
zone: 'zone_name'

You can also run qsctl command without config file, it will try to find config file in specific directories, and if none of them contain a config file, there will be an interactive setup to help you create the config file, which will be created at {$HOME}/.qingstor/config.yaml. (PS: The specific config file path depends on your os, usually ~/.qingstor/config.yaml in unix-like os, and C:\User\{username}\.qingstor\config.yaml in Windows.)

interactive setup was removed from v2.2.0, and may be added in the future with an independent command.

Since v2.2.0, we moved all interactive operation into qsctl shell, in order that you can call commands in your script without any interactive interruption. We also removed progress bar rendering from all commands and added it into qsctl shell.

Qsctl Shell

We introduced interactive shell from v2.2.0, which contains more instruction and tips. It is highly recommended for those who just start to use qsctl. You can just execute qsctl shell to enter the shell interface and run commands according to the tips. We also support commands history and show tips and auto completion for:

  • available commands at the beginning of new line.
  • buckets after inputting qs://.
  • local files after inputting space.
  • available flags for current command.

Available Commands

Commands supported by qsctl are listed below:

  • cat: Cat a remote object into stdout.
  • cp: Copy local file(s) to QingStor or QingStor key(s) to local.
  • ls: List buckets, or objects with given prefix.
  • mb: Make a new bucket.
  • mv: Move local file(s) to QingStor or QingStor key(s) to local
  • presign: Get the pre-signed URL by given object key.
  • rb: Delete a bucket.
  • rm: Remove remote object(s).
  • shell: start an interactive shell of qsctl.
  • stat: Stat a remote object.
  • sync: Sync between local directory and QS-Directory.
  • tee: Tee from stdin to a remote object. (NOTICE: qsctl will not tee the content to stdout like linux tee command does.)

See the detailed usage and examples with qsctl --help or qsctl <command> --help.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].