You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@iotdb.apache.org by cr...@apache.org on 2025/07/02 02:41:09 UTC
(iotdb-docs) branch main updated: separate cli apache from timecho (#794)
This is an automated email from the ASF dual-hosted git repository.
critas pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/iotdb-docs.git
The following commit(s) were added to refs/heads/main by this push:
new 90913be0 separate cli apache from timecho (#794)
90913be0 is described below
commit 90913be08d158971a379c52f4bf6b92cf58afffd
Author: leto-b <bi...@timecho.com>
AuthorDate: Wed Jul 2 10:41:04 2025 +0800
separate cli apache from timecho (#794)
* separate cli apache from timecho
* fix cli links in other documents
* fix cli links in other documents
---
src/.vuepress/sidebar/V1.3.x/en.ts | 2 +-
src/.vuepress/sidebar/V1.3.x/zh.ts | 2 +-
src/.vuepress/sidebar/V2.0.x/en-Tree.ts | 2 +-
src/.vuepress/sidebar/V2.0.x/zh-Tree.ts | 2 +-
src/.vuepress/sidebar_timecho/V1.3.x/en.ts | 2 +-
src/.vuepress/sidebar_timecho/V1.3.x/zh.ts | 2 +-
src/.vuepress/sidebar_timecho/V2.0.x/en-Tree.ts | 2 +-
src/.vuepress/sidebar_timecho/V2.0.x/zh-Tree.ts | 2 +-
src/UserGuide/Master/Tree/Tools-System/CLI.md | 292 +--------------------
.../Tree/Tools-System/{CLI.md => CLI_apache.md} | 0
.../Tree/Tools-System/CLI_timecho.md} | 24 +-
src/UserGuide/V1.3.x/Tools-System/CLI.md | 280 +-------------------
.../V1.3.x/Tools-System/{CLI.md => CLI_apache.md} | 0
.../CLI.md => V1.3.x/Tools-System/CLI_timecho.md} | 28 +-
src/UserGuide/dev-1.3/Tools-System/CLI.md | 280 +-------------------
.../CLI.md => dev-1.3/Tools-System/CLI_apache.md} | 0
.../Tools-System/{CLI.md => CLI_timecho.md} | 28 +-
src/UserGuide/latest/Tools-System/CLI.md | 292 +--------------------
.../CLI.md => latest/Tools-System/CLI_apache.md} | 0
.../latest/Tools-System/{CLI.md => CLI_timecho.md} | 24 +-
src/zh/UserGuide/Master/Tree/Tools-System/CLI.md | 273 +------------------
.../Tree/Tools-System/{CLI.md => CLI_apache.md} | 2 +-
.../Tree/Tools-System/{CLI.md => CLI_timecho.md} | 27 +-
src/zh/UserGuide/V1.3.x/Tools-System/CLI.md | 261 +-----------------
.../CLI.md => V1.3.x/Tools-System/CLI_apache.md} | 2 +-
.../CLI.md => V1.3.x/Tools-System/CLI_timecho.md} | 27 +-
src/zh/UserGuide/dev-1.3/Tools-System/CLI.md | 261 +-----------------
.../dev-1.3/Tools-System/{CLI.md => CLI_apache.md} | 2 +-
.../Tools-System/{CLI.md => CLI_timecho.md} | 27 +-
src/zh/UserGuide/latest/Tools-System/CLI.md | 273 +------------------
.../CLI.md => latest/Tools-System/CLI_apache.md} | 2 +-
.../CLI.md => latest/Tools-System/CLI_timecho.md} | 27 +-
32 files changed, 96 insertions(+), 2352 deletions(-)
diff --git a/src/.vuepress/sidebar/V1.3.x/en.ts b/src/.vuepress/sidebar/V1.3.x/en.ts
index fe171bde..b8f33477 100644
--- a/src/.vuepress/sidebar/V1.3.x/en.ts
+++ b/src/.vuepress/sidebar/V1.3.x/en.ts
@@ -149,7 +149,7 @@ export const enSidebar = {
prefix: 'Tools-System/',
// children: 'structure',
children: [
- { text: 'Command Line Interface (CLI)', link: 'CLI' },
+ { text: 'Command Line Interface (CLI)', link: 'CLI_apache' },
{ text: 'Monitor Tool', link: 'Monitor-Tool_apache' },
{ text: 'Benchmark Tool', link: 'Benchmark' },
{ text: 'Cluster Management Tool', link: 'Maintenance-Tool_apache' },
diff --git a/src/.vuepress/sidebar/V1.3.x/zh.ts b/src/.vuepress/sidebar/V1.3.x/zh.ts
index 81be07b5..57f3b7d4 100644
--- a/src/.vuepress/sidebar/V1.3.x/zh.ts
+++ b/src/.vuepress/sidebar/V1.3.x/zh.ts
@@ -138,7 +138,7 @@ export const zhSidebar = {
prefix: 'Tools-System/',
// children: 'structure',
children: [
- { text: '命令行工具', link: 'CLI' },
+ { text: '命令行工具', link: 'CLI_apache' },
{ text: '监控工具', link: 'Monitor-Tool_apache' },
{ text: '测试工具', link: 'Benchmark' },
{ text: '集群管理工具', link: 'Maintenance-Tool_apache' },
diff --git a/src/.vuepress/sidebar/V2.0.x/en-Tree.ts b/src/.vuepress/sidebar/V2.0.x/en-Tree.ts
index f2bc7aa8..1047e8bd 100644
--- a/src/.vuepress/sidebar/V2.0.x/en-Tree.ts
+++ b/src/.vuepress/sidebar/V2.0.x/en-Tree.ts
@@ -139,7 +139,7 @@ export const enSidebar = {
collapsible: true,
prefix: 'Tools-System/',
children: [
- { text: 'Command Line Interface (CLI)', link: 'CLI' },
+ { text: 'Command Line Interface (CLI)', link: 'CLI_apache' },
{ text: 'Monitor Tool', link: 'Monitor-Tool_apache' },
{ text: 'Benchmark Tool', link: 'Benchmark' },
{ text: 'Cluster Management Tool', link: 'Maintenance-Tool_apache' },
diff --git a/src/.vuepress/sidebar/V2.0.x/zh-Tree.ts b/src/.vuepress/sidebar/V2.0.x/zh-Tree.ts
index de1e45c8..87496fe1 100644
--- a/src/.vuepress/sidebar/V2.0.x/zh-Tree.ts
+++ b/src/.vuepress/sidebar/V2.0.x/zh-Tree.ts
@@ -128,7 +128,7 @@ export const zhSidebar = {
collapsible: true,
prefix: 'Tools-System/',
children: [
- { text: '命令行工具', link: 'CLI' },
+ { text: '命令行工具', link: 'CLI_apache' },
{ text: '监控工具', link: 'Monitor-Tool_apache' },
{ text: '测试工具', link: 'Benchmark' },
{ text: '集群管理工具', link: 'Maintenance-Tool_apache' },
diff --git a/src/.vuepress/sidebar_timecho/V1.3.x/en.ts b/src/.vuepress/sidebar_timecho/V1.3.x/en.ts
index 6920a148..762901b5 100644
--- a/src/.vuepress/sidebar_timecho/V1.3.x/en.ts
+++ b/src/.vuepress/sidebar_timecho/V1.3.x/en.ts
@@ -164,7 +164,7 @@ export const enSidebar = {
prefix: 'Tools-System/',
// children: 'structure',
children: [
- { text: 'CLI', link: 'CLI' },
+ { text: 'CLI', link: 'CLI_timecho' },
{ text: 'Workbench', link: 'Workbench_timecho' },
{ text: 'Monitor Tool', link: 'Monitor-Tool_timecho' },
{ text: 'Benchmark Tool', link: 'Benchmark' },
diff --git a/src/.vuepress/sidebar_timecho/V1.3.x/zh.ts b/src/.vuepress/sidebar_timecho/V1.3.x/zh.ts
index 95cfc587..a17fe399 100644
--- a/src/.vuepress/sidebar_timecho/V1.3.x/zh.ts
+++ b/src/.vuepress/sidebar_timecho/V1.3.x/zh.ts
@@ -147,7 +147,7 @@ export const zhSidebar = {
prefix: 'Tools-System/',
// children: 'structure',
children: [
- { text: '命令行工具', link: 'CLI' },
+ { text: '命令行工具', link: 'CLI_timecho' },
{ text: '可视化控制台', link: 'Workbench_timecho' },
{ text: '监控工具', link: 'Monitor-Tool_timecho' },
{ text: '测试工具', link: 'Benchmark' },
diff --git a/src/.vuepress/sidebar_timecho/V2.0.x/en-Tree.ts b/src/.vuepress/sidebar_timecho/V2.0.x/en-Tree.ts
index 12b35c95..1b16b349 100644
--- a/src/.vuepress/sidebar_timecho/V2.0.x/en-Tree.ts
+++ b/src/.vuepress/sidebar_timecho/V2.0.x/en-Tree.ts
@@ -154,7 +154,7 @@ export const enSidebar = {
collapsible: true,
prefix: 'Tools-System/',
children: [
- { text: 'CLI', link: 'CLI' },
+ { text: 'CLI', link: 'CLI_timecho' },
{ text: 'Workbench', link: 'Workbench_timecho' },
{ text: 'Monitor Tool', link: 'Monitor-Tool_timecho' },
{ text: 'Benchmark Tool', link: 'Benchmark' },
diff --git a/src/.vuepress/sidebar_timecho/V2.0.x/zh-Tree.ts b/src/.vuepress/sidebar_timecho/V2.0.x/zh-Tree.ts
index f86cb1b3..a5e8e625 100644
--- a/src/.vuepress/sidebar_timecho/V2.0.x/zh-Tree.ts
+++ b/src/.vuepress/sidebar_timecho/V2.0.x/zh-Tree.ts
@@ -137,7 +137,7 @@ export const zhSidebar = {
collapsible: true,
prefix: 'Tools-System/',
children: [
- { text: '命令行工具', link: 'CLI' },
+ { text: '命令行工具', link: 'CLI_timecho' },
{ text: '可视化控制台', link: 'Workbench_timecho' },
{ text: '监控工具', link: 'Monitor-Tool_timecho' },
{ text: '测试工具', link: 'Benchmark' },
diff --git a/src/UserGuide/Master/Tree/Tools-System/CLI.md b/src/UserGuide/Master/Tree/Tools-System/CLI.md
index 665af205..03580faf 100644
--- a/src/UserGuide/Master/Tree/Tools-System/CLI.md
+++ b/src/UserGuide/Master/Tree/Tools-System/CLI.md
@@ -1,3 +1,6 @@
+---
+redirectTo: CLI_apache.html
+---
<!--
Licensed to the Apache Software Foundation (ASF) under one
@@ -17,291 +20,4 @@
specific language governing permissions and limitations
under the License.
--->
-
-# Command Line Interface (CLI)
-
-
-IoTDB provides Cli/shell tools for users to interact with IoTDB server in command lines. This document shows how Cli/shell tool works and the meaning of its parameters.
-
-> Note: In this document, \$IOTDB\_HOME represents the path of the IoTDB installation directory.
-
-## 1. Installation
-
-If you use the source code version of IoTDB, then under the root path of IoTDB, execute:
-
-```shell
-> mvn clean package -pl iotdb-client/cli -am -DskipTests -P get-jar-with-dependencies
-```
-
-After build, the IoTDB Cli will be in the folder "cli/target/iotdb-cli-{project.version}".
-
-If you download the binary version, then the Cli can be used directly in sbin folder.
-
-## 2. Running
-
-### 2.1 Running Cli
-
-After installation, there is a default user in IoTDB: `root`, and the
-default password is `root`. Users can use this username to try IoTDB Cli/Shell tool. The cli startup script is the `start-cli` file under the \$IOTDB\_HOME/bin folder. When starting the script, you need to specify the IP and PORT. (Make sure the IoTDB cluster is running properly when you use Cli/Shell tool to connect to it.)
-
-Here is an example where the cluster is started locally and the user has not changed the running port. The default rpc port is
-6667 <br>
-If you need to connect to the remote DataNode or changes
-the rpc port number of the DataNode running, set the specific IP and RPC PORT at -h and -p.<br>
-You also can set your own environment variable at the front of the start script
-
-The Linux and MacOS system startup commands are as follows:
-
-```shell
-Shell > bash sbin/start-cli.sh -h 127.0.0.1 -p 6667 -u root -pw root
-```
-
-The Windows system startup commands are as follows:
-
-```shell
-# Before version V2.0.4.x
-Shell > sbin\start-cli.bat -h 127.0.0.1 -p 6667 -u root -pw root
-
-# V2.0.4.x and later versions
-Shell > sbin\windows\start-cli.bat -h 127.0.0.1 -p 6667 -u root -pw root
-```
-
-After operating these commands, the cli can be started successfully. The successful status will be as follows:
-
-```
- _____ _________ ______ ______
-|_ _| | _ _ ||_ _ `.|_ _ \
- | | .--.|_/ | | \_| | | `. \ | |_) |
- | | / .'`\ \ | | | | | | | __'.
- _| |_| \__. | _| |_ _| |_.' /_| |__) |
-|_____|'.__.' |_____| |______.'|_______/ version <version>
-
-
-Successfully login at 127.0.0.1:6667
-IoTDB>
-```
-
-Enter ```quit``` or `exit` can exit Cli.
-
-### 2.2 Cli Parameters
-
-| Parameter name | Parameter type | Required | Description | Example |
-| :--------------------------- | :------------------------- | :------- | :----------------------------------------------------------- | :------------------ |
-| -disableISO8601 | No parameters | No | If this parameter is set, IoTDB will print the timestamp in digital form | -disableISO8601 |
-| -h <`host`> | string, no quotation marks | Yes | The IP address of the IoTDB server | -h 10.129.187.21 |
-| -help | No parameters | No | Print help information for IoTDB | -help |
-| -p <`rpcPort`> | int | Yes | The rpc port number of the IoTDB server. IoTDB runs on rpc port 6667 by default | -p 6667 |
-| -pw <`password`> | string, no quotation marks | No | The password used for IoTDB to connect to the server. If no password is entered, IoTDB will ask for password in Cli command | -pw root |
-| -u <`username`> | string, no quotation marks | Yes | User name used for IoTDB to connect the server | -u root |
-| -maxPRC <`maxPrintRowCount`> | int | No | Set the maximum number of rows that IoTDB returns | -maxPRC 10 |
-| -e <`execute`> | string | No | manipulate IoTDB in batches without entering cli input mode | -e "show databases" |
-| -c | empty | No | If the server enables `rpc_thrift_compression_enable=true`, then cli must use `-c` | -c |
-
-Following is a cli command which connects the host with IP
-10.129.187.21, rpc port 6667, username "root", password "root", and prints the timestamp in digital form. The maximum number of lines displayed on the IoTDB command line is 10.
-
-The Linux and MacOS system startup commands are as follows:
-
-```shell
-Shell > bash sbin/start-cli.sh -h 10.129.187.21 -p 6667 -u root -pw root -disableISO8601 -maxPRC 10
-```
-
-The Windows system startup commands are as follows:
-
-```shell
-# Before version V2.0.4.x
-Shell > sbin\start-cli.bat -h 10.129.187.21 -p 6667 -u root -pw root -disableISO8601 -maxPRC 10
-
-# # V2.0.4.x and later versions
-Shell > sbin\windows\start-cli.bat -h 10.129.187.21 -p 6667 -u root -pw root -disableISO8601 -maxPRC 10
-```
-
-### 2.3 CLI Special Command
-
-Special commands of Cli are below.
-
-| Command | Description / Example |
-| :-------------------------- | :------------------------------------------------------ |
-| `set time_display_type=xxx` | eg. long, default, ISO8601, yyyy-MM-dd HH:mm:ss |
-| `show time_display_type` | show time display type |
-| `set time_zone=xxx` | eg. +08:00, Asia/Shanghai |
-| `show time_zone` | show cli time zone |
-| `set fetch_size=xxx` | set fetch size when querying data from server |
-| `show fetch_size` | show fetch size |
-| `set max_display_num=xxx` | set max lines for cli to output, -1 equals to unlimited |
-| `help` | Get hints for CLI special commands |
-| `exit/quit` | Exit CLI |
-
-### 2.4 Note on using the CLI with OpenID Connect Auth enabled on Server side
-
-Openid connect (oidc) uses keycloack as the authority authentication service of oidc service
-
-
-#### configuration
-
-The configuration is located in iotdb-system.properties , set the author_provider_class is org.apache.iotdb.commons.auth.authorizer.OpenIdAuthorizer Openid service is enabled, and the default value is org.apache.iotdb.db.auth.authorizer.LocalFileAuthorizer Indicates that the openid service is not enabled.
-
-```
-authorizer_provider_class=org.apache.iotdb.commons.auth.authorizer.OpenIdAuthorizer
-```
-
-If the openid service is turned on, openid_URL is required,openID_url value is http://ip:port/realms/{realmsName}
-
-```
-openID_url=http://127.0.0.1:8080/realms/iotdb/
-```
-
-#### keycloack configuration
-
-1、Download the keycloack file (This tutorial is version 21.1.0) and start keycloack in keycloack/bin
-
-```shell
-Shell >cd bin
-Shell >./kc.sh start-dev
-```
-
-2、use url(https://ip:port) login keycloack, the first login needs to create a user
-
-
-3、Click administration console
-
-
-4、In the master menu on the left, click Create realm and enter Realm name to create a new realm
-
-
-
-
-
-5、Click the menu clients on the left to create clients
-
-
-
-6、Click user on the left menu to create user
-
-
-
-7、Click the newly created user ID, click the credentials navigation, enter the password and close the temporary option. The configuration of keycloud is completed
-
-
-
-8、To create a role, click Roles on the left menu and then click the Create Role button to add a role
-
-
-
-9、 Enter `iotdb_admin` in the Role Name and click the save button. Tip: `iotdb_admin` here cannot be any other name, otherwise even after successful login, you will not have permission to use iotdb's query, insert, create database, add users, roles and other functions
-
-
-
-10、Click on the User menu on the left and then click on the user in the user list to add the `iotdb_admin` role we just created for that user
-
-
-
-11、 Select Role Mappings, select the `iotdb_admin` role in Assign Role
-
-
-
-
-
-
-Tip: If the user role is adjusted, you need to regenerate the token and log in to iotdb again to take effect
-
-The above steps provide a way for keycloak to log into iotdb. For more ways, please refer to keycloak configuration
-
-If OIDC is enabled on server side then no username / passwort is needed but a valid Access Token from the OIDC Provider.
-So as username you use the token and the password has to be empty, e.g.
-
-```shell
-Shell > bash sbin/start-cli.sh -h 10.129.187.21 -p 6667 -u {my-access-token} -pw ""
-```
-
-Among them, you need to replace {my access token} (note, including {}) with your token, that is, the value corresponding to access_token. The password is empty and needs to be confirmed again.
-
-
-
-
-How to get the token is dependent on your OpenID Connect setup and not covered here.
-In the simplest case you can get this via the command line with the `passwort-grant`.
-For example, if you use keycloack as OIDC and you have a realm with a client `iotdb` defined as public you could use
-the following `curl` command to fetch a token (replace all `{}` with appropriate values).
-
-```shell
-curl -X POST "https://{your-keycloack-server}/realms/{your-realm}/protocol/openid-connect/token" \
- -H "Content-Type: application/x-www-form-urlencoded" \
- -d "username={username}" \
- -d "password={password}" \
- -d 'grant_type=password' \
- -d "client_id=iotdb-client"
-```
-
-The response looks something like
-
-```json
-{"access_token":"eyJhbGciOiJSUzI1NiIsInR5cCIgOiAiSldUIiwia2lkIiA6ICJxMS1XbTBvelE1TzBtUUg4LVNKYXAyWmNONE1tdWNXd25RV0tZeFpKNG93In0.eyJleHAiOjE1OTAzOTgwNzEsImlhdCI6MTU5MDM5Nzc3MSwianRpIjoiNjA0ZmYxMDctN2NiNy00NTRmLWIwYmQtY2M2ZDQwMjFiNGU4IiwiaXNzIjoiaHR0cDovL2F1dGguZGVtby5wcmFnbWF0aWNpbmR1c3RyaWVzLmRlL2F1dGgvcmVhbG1zL0lvVERCIiwiYXVkIjoiYWNjb3VudCIsInN1YiI6ImJhMzJlNDcxLWM3NzItNGIzMy04ZGE2LTZmZThhY2RhMDA3MyIsInR5cCI6IkJlYXJlciIsImF6cCI6ImlvdGRiIiwic2Vzc2lvbl9zdGF0ZSI6IjA2MGQyODYyLTE0ZWQtNDJmZS1 [...]
-```
-
-The interesting part here is the access token with the key `access_token`.
-This has to be passed as username (with parameter `-u`) and empty password to the CLI.
-
-### 2.5 Batch Operation of Cli
-
--e parameter is designed for the Cli/shell tool in the situation where you would like to manipulate IoTDB in batches through scripts. By using the -e parameter, you can operate IoTDB without entering the cli's input mode.
-
-In order to avoid confusion between statements and other parameters, the current version only supports the -e parameter as the last parameter.
-
-The usage of -e parameter for Cli/shell is as follows:
-
-The Linux and MacOS system commands:
-
-```shell
-Shell > bash sbin/start-cli.sh -h {host} -p {rpcPort} -u {user} -pw {password} -e {sql for iotdb}
-```
-
-The Windows system commands:
-
-```shell
-# Before version V2.0.4.x
-Shell > sbin\start-cli.bat -h {host} -p {rpcPort} -u {user} -pw {password} -e {sql for iotdb}
-
-# V2.0.4.x and later versions
-Shell > sbin\windows\start-cli.bat -h {host} -p {rpcPort} -u {user} -pw {password} -e {sql for iotdb}
-```
-
-In the Windows environment, the SQL statement of the -e parameter needs to use ` `` ` to replace `" "`
-
-In order to better explain the use of -e parameter, take following as an example(On linux system).
-
-Suppose you want to create a database root.demo to a newly launched IoTDB, create a timeseries root.demo.s1 and insert three data points into it. With -e parameter, you could write a shell like this:
-
-```shell
-# !/bin/bash
-
-host=127.0.0.1
-rpcPort=6667
-user=root
-pass=root
-
-bash ./sbin/start-cli.sh -h ${host} -p ${rpcPort} -u ${user} -pw ${pass} -e "create database root.demo"
-bash ./sbin/start-cli.sh -h ${host} -p ${rpcPort} -u ${user} -pw ${pass} -e "create timeseries root.demo.s1 WITH DATATYPE=INT32, ENCODING=RLE"
-bash ./sbin/start-cli.sh -h ${host} -p ${rpcPort} -u ${user} -pw ${pass} -e "insert into root.demo(timestamp,s1) values(1,10)"
-bash ./sbin/start-cli.sh -h ${host} -p ${rpcPort} -u ${user} -pw ${pass} -e "insert into root.demo(timestamp,s1) values(2,11)"
-bash ./sbin/start-cli.sh -h ${host} -p ${rpcPort} -u ${user} -pw ${pass} -e "insert into root.demo(timestamp,s1) values(3,12)"
-bash ./sbin/start-cli.sh -h ${host} -p ${rpcPort} -u ${user} -pw ${pass} -e "select s1 from root.demo"
-```
-
-The results are shown in the figure, which are consistent with the Cli and jdbc operations.
-
-```shell
- Shell > bash ./shell.sh
-+-----------------------------+------------+
-| Time|root.demo.s1|
-+-----------------------------+------------+
-|1970-01-01T08:00:00.001+08:00| 10|
-|1970-01-01T08:00:00.002+08:00| 11|
-|1970-01-01T08:00:00.003+08:00| 12|
-+-----------------------------+------------+
-Total line number = 3
-It costs 0.267s
-```
-
-It should be noted that the use of the -e parameter in shell scripts requires attention to the escaping of special characters.
+-->
\ No newline at end of file
diff --git a/src/UserGuide/Master/Tree/Tools-System/CLI.md b/src/UserGuide/Master/Tree/Tools-System/CLI_apache.md
similarity index 100%
copy from src/UserGuide/Master/Tree/Tools-System/CLI.md
copy to src/UserGuide/Master/Tree/Tools-System/CLI_apache.md
diff --git a/src/UserGuide/latest/Tools-System/CLI.md b/src/UserGuide/Master/Tree/Tools-System/CLI_timecho.md
similarity index 96%
copy from src/UserGuide/latest/Tools-System/CLI.md
copy to src/UserGuide/Master/Tree/Tools-System/CLI_timecho.md
index 665af205..a756abe3 100644
--- a/src/UserGuide/latest/Tools-System/CLI.md
+++ b/src/UserGuide/Master/Tree/Tools-System/CLI_timecho.md
@@ -26,21 +26,7 @@ IoTDB provides Cli/shell tools for users to interact with IoTDB server in comman
> Note: In this document, \$IOTDB\_HOME represents the path of the IoTDB installation directory.
-## 1. Installation
-
-If you use the source code version of IoTDB, then under the root path of IoTDB, execute:
-
-```shell
-> mvn clean package -pl iotdb-client/cli -am -DskipTests -P get-jar-with-dependencies
-```
-
-After build, the IoTDB Cli will be in the folder "cli/target/iotdb-cli-{project.version}".
-
-If you download the binary version, then the Cli can be used directly in sbin folder.
-
-## 2. Running
-
-### 2.1 Running Cli
+## 1. Running Cli
After installation, there is a default user in IoTDB: `root`, and the
default password is `root`. Users can use this username to try IoTDB Cli/Shell tool. The cli startup script is the `start-cli` file under the \$IOTDB\_HOME/bin folder. When starting the script, you need to specify the IP and PORT. (Make sure the IoTDB cluster is running properly when you use Cli/Shell tool to connect to it.)
@@ -84,7 +70,7 @@ IoTDB>
Enter ```quit``` or `exit` can exit Cli.
-### 2.2 Cli Parameters
+## 2. Cli Parameters
| Parameter name | Parameter type | Required | Description | Example |
| :--------------------------- | :------------------------- | :------- | :----------------------------------------------------------- | :------------------ |
@@ -117,7 +103,7 @@ Shell > sbin\start-cli.bat -h 10.129.187.21 -p 6667 -u root -pw root -disableISO
Shell > sbin\windows\start-cli.bat -h 10.129.187.21 -p 6667 -u root -pw root -disableISO8601 -maxPRC 10
```
-### 2.3 CLI Special Command
+## 3. CLI Special Command
Special commands of Cli are below.
@@ -133,7 +119,7 @@ Special commands of Cli are below.
| `help` | Get hints for CLI special commands |
| `exit/quit` | Exit CLI |
-### 2.4 Note on using the CLI with OpenID Connect Auth enabled on Server side
+## 4. Note on using the CLI with OpenID Connect Auth enabled on Server side
Openid connect (oidc) uses keycloack as the authority authentication service of oidc service
@@ -243,7 +229,7 @@ The response looks something like
The interesting part here is the access token with the key `access_token`.
This has to be passed as username (with parameter `-u`) and empty password to the CLI.
-### 2.5 Batch Operation of Cli
+## 5. Batch Operation of Cli
-e parameter is designed for the Cli/shell tool in the situation where you would like to manipulate IoTDB in batches through scripts. By using the -e parameter, you can operate IoTDB without entering the cli's input mode.
diff --git a/src/UserGuide/V1.3.x/Tools-System/CLI.md b/src/UserGuide/V1.3.x/Tools-System/CLI.md
index 47a03895..03580faf 100644
--- a/src/UserGuide/V1.3.x/Tools-System/CLI.md
+++ b/src/UserGuide/V1.3.x/Tools-System/CLI.md
@@ -1,3 +1,6 @@
+---
+redirectTo: CLI_apache.html
+---
<!--
Licensed to the Apache Software Foundation (ASF) under one
@@ -17,279 +20,4 @@
specific language governing permissions and limitations
under the License.
--->
-
-# Command Line Interface (CLI)
-
-
-IoTDB provides Cli/shell tools for users to interact with IoTDB server in command lines. This document shows how Cli/shell tool works and the meaning of its parameters.
-
-> Note: In this document, \$IOTDB\_HOME represents the path of the IoTDB installation directory.
-
-## Installation
-
-If you use the source code version of IoTDB, then under the root path of IoTDB, execute:
-
-```shell
-> mvn clean package -pl iotdb-client/cli -am -DskipTests -P get-jar-with-dependencies
-```
-
-After build, the IoTDB Cli will be in the folder "cli/target/iotdb-cli-{project.version}".
-
-If you download the binary version, then the Cli can be used directly in sbin folder.
-
-## Running
-
-### Running Cli
-
-After installation, there is a default user in IoTDB: `root`, and the
-default password is `root`. Users can use this username to try IoTDB Cli/Shell tool. The cli startup script is the `start-cli` file under the \$IOTDB\_HOME/bin folder. When starting the script, you need to specify the IP and PORT. (Make sure the IoTDB cluster is running properly when you use Cli/Shell tool to connect to it.)
-
-Here is an example where the cluster is started locally and the user has not changed the running port. The default rpc port is
-6667 <br>
-If you need to connect to the remote DataNode or changes
-the rpc port number of the DataNode running, set the specific IP and RPC PORT at -h and -p.<br>
-You also can set your own environment variable at the front of the start script ("/sbin/start-cli.sh" for linux and "/sbin/start-cli.bat" for windows)
-
-The Linux and MacOS system startup commands are as follows:
-
-```shell
-Shell > bash sbin/start-cli.sh -h 127.0.0.1 -p 6667 -u root -pw root
-```
-
-The Windows system startup commands are as follows:
-
-```shell
-Shell > sbin\start-cli.bat -h 127.0.0.1 -p 6667 -u root -pw root
-```
-
-After operating these commands, the cli can be started successfully. The successful status will be as follows:
-
-```
- _____ _________ ______ ______
-|_ _| | _ _ ||_ _ `.|_ _ \
- | | .--.|_/ | | \_| | | `. \ | |_) |
- | | / .'`\ \ | | | | | | | __'.
- _| |_| \__. | _| |_ _| |_.' /_| |__) |
-|_____|'.__.' |_____| |______.'|_______/ version <version>
-
-
-Successfully login at 127.0.0.1:6667
-IoTDB>
-```
-
-Enter ```quit``` or `exit` can exit Cli.
-
-### Cli Parameters
-
-| Parameter name | Parameter type | Required | Description | Example |
-| :--------------------------- | :------------------------- | :------- | :----------------------------------------------------------- | :------------------ |
-| -disableISO8601 | No parameters | No | If this parameter is set, IoTDB will print the timestamp in digital form | -disableISO8601 |
-| -h <`host`> | string, no quotation marks | Yes | The IP address of the IoTDB server | -h 10.129.187.21 |
-| -help | No parameters | No | Print help information for IoTDB | -help |
-| -p <`rpcPort`> | int | Yes | The rpc port number of the IoTDB server. IoTDB runs on rpc port 6667 by default | -p 6667 |
-| -pw <`password`> | string, no quotation marks | No | The password used for IoTDB to connect to the server. If no password is entered, IoTDB will ask for password in Cli command | -pw root |
-| -u <`username`> | string, no quotation marks | Yes | User name used for IoTDB to connect the server | -u root |
-| -maxPRC <`maxPrintRowCount`> | int | No | Set the maximum number of rows that IoTDB returns | -maxPRC 10 |
-| -e <`execute`> | string | No | manipulate IoTDB in batches without entering cli input mode | -e "show databases" |
-| -c | empty | No | If the server enables `rpc_thrift_compression_enable=true`, then cli must use `-c` | -c |
-
-Following is a cli command which connects the host with IP
-10.129.187.21, rpc port 6667, username "root", password "root", and prints the timestamp in digital form. The maximum number of lines displayed on the IoTDB command line is 10.
-
-The Linux and MacOS system startup commands are as follows:
-
-```shell
-Shell > bash sbin/start-cli.sh -h 10.129.187.21 -p 6667 -u root -pw root -disableISO8601 -maxPRC 10
-```
-
-The Windows system startup commands are as follows:
-
-```shell
-Shell > sbin\start-cli.bat -h 10.129.187.21 -p 6667 -u root -pw root -disableISO8601 -maxPRC 10
-```
-
-### CLI Special Command
-
-Special commands of Cli are below.
-
-| Command | Description / Example |
-| :-------------------------- | :------------------------------------------------------ |
-| `set time_display_type=xxx` | eg. long, default, ISO8601, yyyy-MM-dd HH:mm:ss |
-| `show time_display_type` | show time display type |
-| `set time_zone=xxx` | eg. +08:00, Asia/Shanghai |
-| `show time_zone` | show cli time zone |
-| `set fetch_size=xxx` | set fetch size when querying data from server |
-| `show fetch_size` | show fetch size |
-| `set max_display_num=xxx` | set max lines for cli to output, -1 equals to unlimited |
-| `help` | Get hints for CLI special commands |
-| `exit/quit` | Exit CLI |
-
-### Note on using the CLI with OpenID Connect Auth enabled on Server side
-
-Openid connect (oidc) uses keycloack as the authority authentication service of oidc service
-
-
-#### configuration
-
-The configuration is located in iotdb-system.properties , set the author_provider_class is org.apache.iotdb.commons.auth.authorizer.OpenIdAuthorizer Openid service is enabled, and the default value is org.apache.iotdb.db.auth.authorizer.LocalFileAuthorizer Indicates that the openid service is not enabled.
-
-```
-authorizer_provider_class=org.apache.iotdb.commons.auth.authorizer.OpenIdAuthorizer
-```
-
-If the openid service is turned on, openid_URL is required,openID_url value is http://ip:port/realms/{realmsName}
-
-```
-openID_url=http://127.0.0.1:8080/realms/iotdb/
-```
-
-#### keycloack configuration
-
-1、Download the keycloack file (This tutorial is version 21.1.0) and start keycloack in keycloack/bin
-
-```shell
-Shell >cd bin
-Shell >./kc.sh start-dev
-```
-
-2、use url(https://ip:port) login keycloack, the first login needs to create a user
-
-
-3、Click administration console
-
-
-4、In the master menu on the left, click Create realm and enter Realm name to create a new realm
-
-
-
-
-
-5、Click the menu clients on the left to create clients
-
-
-
-6、Click user on the left menu to create user
-
-
-
-7、Click the newly created user ID, click the credentials navigation, enter the password and close the temporary option. The configuration of keycloud is completed
-
-
-
-8、To create a role, click Roles on the left menu and then click the Create Role button to add a role
-
-
-
-9、 Enter `iotdb_admin` in the Role Name and click the save button. Tip: `iotdb_admin` here cannot be any other name, otherwise even after successful login, you will not have permission to use iotdb's query, insert, create database, add users, roles and other functions
-
-
-
-10、Click on the User menu on the left and then click on the user in the user list to add the `iotdb_admin` role we just created for that user
-
-
-
-11、 Select Role Mappings, select the `iotdb_admin` role in Assign Role
-
-
-
-
-
-
-Tip: If the user role is adjusted, you need to regenerate the token and log in to iotdb again to take effect
-
-The above steps provide a way for keycloak to log into iotdb. For more ways, please refer to keycloak configuration
-
-If OIDC is enabled on server side then no username / passwort is needed but a valid Access Token from the OIDC Provider.
-So as username you use the token and the password has to be empty, e.g.
-
-```shell
-Shell > bash sbin/start-cli.sh -h 10.129.187.21 -p 6667 -u {my-access-token} -pw ""
-```
-
-Among them, you need to replace {my access token} (note, including {}) with your token, that is, the value corresponding to access_token. The password is empty and needs to be confirmed again.
-
-
-
-
-How to get the token is dependent on your OpenID Connect setup and not covered here.
-In the simplest case you can get this via the command line with the `passwort-grant`.
-For example, if you use keycloack as OIDC and you have a realm with a client `iotdb` defined as public you could use
-the following `curl` command to fetch a token (replace all `{}` with appropriate values).
-
-```shell
-curl -X POST "https://{your-keycloack-server}/realms/{your-realm}/protocol/openid-connect/token" \
- -H "Content-Type: application/x-www-form-urlencoded" \
- -d "username={username}" \
- -d "password={password}" \
- -d 'grant_type=password' \
- -d "client_id=iotdb-client"
-```
-
-The response looks something like
-
-```json
-{"access_token":"eyJhbGciOiJSUzI1NiIsInR5cCIgOiAiSldUIiwia2lkIiA6ICJxMS1XbTBvelE1TzBtUUg4LVNKYXAyWmNONE1tdWNXd25RV0tZeFpKNG93In0.eyJleHAiOjE1OTAzOTgwNzEsImlhdCI6MTU5MDM5Nzc3MSwianRpIjoiNjA0ZmYxMDctN2NiNy00NTRmLWIwYmQtY2M2ZDQwMjFiNGU4IiwiaXNzIjoiaHR0cDovL2F1dGguZGVtby5wcmFnbWF0aWNpbmR1c3RyaWVzLmRlL2F1dGgvcmVhbG1zL0lvVERCIiwiYXVkIjoiYWNjb3VudCIsInN1YiI6ImJhMzJlNDcxLWM3NzItNGIzMy04ZGE2LTZmZThhY2RhMDA3MyIsInR5cCI6IkJlYXJlciIsImF6cCI6ImlvdGRiIiwic2Vzc2lvbl9zdGF0ZSI6IjA2MGQyODYyLTE0ZWQtNDJmZS1 [...]
-```
-
-The interesting part here is the access token with the key `access_token`.
-This has to be passed as username (with parameter `-u`) and empty password to the CLI.
-
-### Batch Operation of Cli
-
--e parameter is designed for the Cli/shell tool in the situation where you would like to manipulate IoTDB in batches through scripts. By using the -e parameter, you can operate IoTDB without entering the cli's input mode.
-
-In order to avoid confusion between statements and other parameters, the current version only supports the -e parameter as the last parameter.
-
-The usage of -e parameter for Cli/shell is as follows:
-
-The Linux and MacOS system commands:
-
-```shell
-Shell > bash sbin/start-cli.sh -h {host} -p {rpcPort} -u {user} -pw {password} -e {sql for iotdb}
-```
-
-The Windows system commands:
-
-```shell
-Shell > sbin\start-cli.bat -h {host} -p {rpcPort} -u {user} -pw {password} -e {sql for iotdb}
-```
-
-In the Windows environment, the SQL statement of the -e parameter needs to use ` `` ` to replace `" "`
-
-In order to better explain the use of -e parameter, take following as an example(On linux system).
-
-Suppose you want to create a database root.demo to a newly launched IoTDB, create a timeseries root.demo.s1 and insert three data points into it. With -e parameter, you could write a shell like this:
-
-```shell
-# !/bin/bash
-
-host=127.0.0.1
-rpcPort=6667
-user=root
-pass=root
-
-bash ./sbin/start-cli.sh -h ${host} -p ${rpcPort} -u ${user} -pw ${pass} -e "create database root.demo"
-bash ./sbin/start-cli.sh -h ${host} -p ${rpcPort} -u ${user} -pw ${pass} -e "create timeseries root.demo.s1 WITH DATATYPE=INT32, ENCODING=RLE"
-bash ./sbin/start-cli.sh -h ${host} -p ${rpcPort} -u ${user} -pw ${pass} -e "insert into root.demo(timestamp,s1) values(1,10)"
-bash ./sbin/start-cli.sh -h ${host} -p ${rpcPort} -u ${user} -pw ${pass} -e "insert into root.demo(timestamp,s1) values(2,11)"
-bash ./sbin/start-cli.sh -h ${host} -p ${rpcPort} -u ${user} -pw ${pass} -e "insert into root.demo(timestamp,s1) values(3,12)"
-bash ./sbin/start-cli.sh -h ${host} -p ${rpcPort} -u ${user} -pw ${pass} -e "select s1 from root.demo"
-```
-
-The results are shown in the figure, which are consistent with the Cli and jdbc operations.
-
-```shell
- Shell > bash ./shell.sh
-+-----------------------------+------------+
-| Time|root.demo.s1|
-+-----------------------------+------------+
-|1970-01-01T08:00:00.001+08:00| 10|
-|1970-01-01T08:00:00.002+08:00| 11|
-|1970-01-01T08:00:00.003+08:00| 12|
-+-----------------------------+------------+
-Total line number = 3
-It costs 0.267s
-```
-
-It should be noted that the use of the -e parameter in shell scripts requires attention to the escaping of special characters.
+-->
\ No newline at end of file
diff --git a/src/UserGuide/V1.3.x/Tools-System/CLI.md b/src/UserGuide/V1.3.x/Tools-System/CLI_apache.md
similarity index 100%
copy from src/UserGuide/V1.3.x/Tools-System/CLI.md
copy to src/UserGuide/V1.3.x/Tools-System/CLI_apache.md
diff --git a/src/UserGuide/dev-1.3/Tools-System/CLI.md b/src/UserGuide/V1.3.x/Tools-System/CLI_timecho.md
similarity index 96%
copy from src/UserGuide/dev-1.3/Tools-System/CLI.md
copy to src/UserGuide/V1.3.x/Tools-System/CLI_timecho.md
index 47a03895..dfc5fdc5 100644
--- a/src/UserGuide/dev-1.3/Tools-System/CLI.md
+++ b/src/UserGuide/V1.3.x/Tools-System/CLI_timecho.md
@@ -26,21 +26,7 @@ IoTDB provides Cli/shell tools for users to interact with IoTDB server in comman
> Note: In this document, \$IOTDB\_HOME represents the path of the IoTDB installation directory.
-## Installation
-
-If you use the source code version of IoTDB, then under the root path of IoTDB, execute:
-
-```shell
-> mvn clean package -pl iotdb-client/cli -am -DskipTests -P get-jar-with-dependencies
-```
-
-After build, the IoTDB Cli will be in the folder "cli/target/iotdb-cli-{project.version}".
-
-If you download the binary version, then the Cli can be used directly in sbin folder.
-
-## Running
-
-### Running Cli
+## Running Cli
After installation, there is a default user in IoTDB: `root`, and the
default password is `root`. Users can use this username to try IoTDB Cli/Shell tool. The cli startup script is the `start-cli` file under the \$IOTDB\_HOME/bin folder. When starting the script, you need to specify the IP and PORT. (Make sure the IoTDB cluster is running properly when you use Cli/Shell tool to connect to it.)
@@ -80,7 +66,7 @@ IoTDB>
Enter ```quit``` or `exit` can exit Cli.
-### Cli Parameters
+## Cli Parameters
| Parameter name | Parameter type | Required | Description | Example |
| :--------------------------- | :------------------------- | :------- | :----------------------------------------------------------- | :------------------ |
@@ -109,7 +95,7 @@ The Windows system startup commands are as follows:
Shell > sbin\start-cli.bat -h 10.129.187.21 -p 6667 -u root -pw root -disableISO8601 -maxPRC 10
```
-### CLI Special Command
+## CLI Special Command
Special commands of Cli are below.
@@ -125,12 +111,12 @@ Special commands of Cli are below.
| `help` | Get hints for CLI special commands |
| `exit/quit` | Exit CLI |
-### Note on using the CLI with OpenID Connect Auth enabled on Server side
+## Note on using the CLI with OpenID Connect Auth enabled on Server side
Openid connect (oidc) uses keycloack as the authority authentication service of oidc service
-#### configuration
+### configuration
The configuration is located in iotdb-system.properties , set the author_provider_class is org.apache.iotdb.commons.auth.authorizer.OpenIdAuthorizer Openid service is enabled, and the default value is org.apache.iotdb.db.auth.authorizer.LocalFileAuthorizer Indicates that the openid service is not enabled.
@@ -144,7 +130,7 @@ If the openid service is turned on, openid_URL is required,openID_url value is h
openID_url=http://127.0.0.1:8080/realms/iotdb/
```
-#### keycloack configuration
+### keycloack configuration
1、Download the keycloack file (This tutorial is version 21.1.0) and start keycloack in keycloack/bin
@@ -235,7 +221,7 @@ The response looks something like
The interesting part here is the access token with the key `access_token`.
This has to be passed as username (with parameter `-u`) and empty password to the CLI.
-### Batch Operation of Cli
+## Batch Operation of Cli
-e parameter is designed for the Cli/shell tool in the situation where you would like to manipulate IoTDB in batches through scripts. By using the -e parameter, you can operate IoTDB without entering the cli's input mode.
diff --git a/src/UserGuide/dev-1.3/Tools-System/CLI.md b/src/UserGuide/dev-1.3/Tools-System/CLI.md
index 47a03895..03580faf 100644
--- a/src/UserGuide/dev-1.3/Tools-System/CLI.md
+++ b/src/UserGuide/dev-1.3/Tools-System/CLI.md
@@ -1,3 +1,6 @@
+---
+redirectTo: CLI_apache.html
+---
<!--
Licensed to the Apache Software Foundation (ASF) under one
@@ -17,279 +20,4 @@
specific language governing permissions and limitations
under the License.
--->
-
-# Command Line Interface (CLI)
-
-
-IoTDB provides Cli/shell tools for users to interact with IoTDB server in command lines. This document shows how Cli/shell tool works and the meaning of its parameters.
-
-> Note: In this document, \$IOTDB\_HOME represents the path of the IoTDB installation directory.
-
-## Installation
-
-If you use the source code version of IoTDB, then under the root path of IoTDB, execute:
-
-```shell
-> mvn clean package -pl iotdb-client/cli -am -DskipTests -P get-jar-with-dependencies
-```
-
-After build, the IoTDB Cli will be in the folder "cli/target/iotdb-cli-{project.version}".
-
-If you download the binary version, then the Cli can be used directly in sbin folder.
-
-## Running
-
-### Running Cli
-
-After installation, there is a default user in IoTDB: `root`, and the
-default password is `root`. Users can use this username to try IoTDB Cli/Shell tool. The cli startup script is the `start-cli` file under the \$IOTDB\_HOME/bin folder. When starting the script, you need to specify the IP and PORT. (Make sure the IoTDB cluster is running properly when you use Cli/Shell tool to connect to it.)
-
-Here is an example where the cluster is started locally and the user has not changed the running port. The default rpc port is
-6667 <br>
-If you need to connect to the remote DataNode or changes
-the rpc port number of the DataNode running, set the specific IP and RPC PORT at -h and -p.<br>
-You also can set your own environment variable at the front of the start script ("/sbin/start-cli.sh" for linux and "/sbin/start-cli.bat" for windows)
-
-The Linux and MacOS system startup commands are as follows:
-
-```shell
-Shell > bash sbin/start-cli.sh -h 127.0.0.1 -p 6667 -u root -pw root
-```
-
-The Windows system startup commands are as follows:
-
-```shell
-Shell > sbin\start-cli.bat -h 127.0.0.1 -p 6667 -u root -pw root
-```
-
-After operating these commands, the cli can be started successfully. The successful status will be as follows:
-
-```
- _____ _________ ______ ______
-|_ _| | _ _ ||_ _ `.|_ _ \
- | | .--.|_/ | | \_| | | `. \ | |_) |
- | | / .'`\ \ | | | | | | | __'.
- _| |_| \__. | _| |_ _| |_.' /_| |__) |
-|_____|'.__.' |_____| |______.'|_______/ version <version>
-
-
-Successfully login at 127.0.0.1:6667
-IoTDB>
-```
-
-Enter ```quit``` or `exit` can exit Cli.
-
-### Cli Parameters
-
-| Parameter name | Parameter type | Required | Description | Example |
-| :--------------------------- | :------------------------- | :------- | :----------------------------------------------------------- | :------------------ |
-| -disableISO8601 | No parameters | No | If this parameter is set, IoTDB will print the timestamp in digital form | -disableISO8601 |
-| -h <`host`> | string, no quotation marks | Yes | The IP address of the IoTDB server | -h 10.129.187.21 |
-| -help | No parameters | No | Print help information for IoTDB | -help |
-| -p <`rpcPort`> | int | Yes | The rpc port number of the IoTDB server. IoTDB runs on rpc port 6667 by default | -p 6667 |
-| -pw <`password`> | string, no quotation marks | No | The password used for IoTDB to connect to the server. If no password is entered, IoTDB will ask for password in Cli command | -pw root |
-| -u <`username`> | string, no quotation marks | Yes | User name used for IoTDB to connect the server | -u root |
-| -maxPRC <`maxPrintRowCount`> | int | No | Set the maximum number of rows that IoTDB returns | -maxPRC 10 |
-| -e <`execute`> | string | No | manipulate IoTDB in batches without entering cli input mode | -e "show databases" |
-| -c | empty | No | If the server enables `rpc_thrift_compression_enable=true`, then cli must use `-c` | -c |
-
-Following is a cli command which connects the host with IP
-10.129.187.21, rpc port 6667, username "root", password "root", and prints the timestamp in digital form. The maximum number of lines displayed on the IoTDB command line is 10.
-
-The Linux and MacOS system startup commands are as follows:
-
-```shell
-Shell > bash sbin/start-cli.sh -h 10.129.187.21 -p 6667 -u root -pw root -disableISO8601 -maxPRC 10
-```
-
-The Windows system startup commands are as follows:
-
-```shell
-Shell > sbin\start-cli.bat -h 10.129.187.21 -p 6667 -u root -pw root -disableISO8601 -maxPRC 10
-```
-
-### CLI Special Command
-
-Special commands of Cli are below.
-
-| Command | Description / Example |
-| :-------------------------- | :------------------------------------------------------ |
-| `set time_display_type=xxx` | eg. long, default, ISO8601, yyyy-MM-dd HH:mm:ss |
-| `show time_display_type` | show time display type |
-| `set time_zone=xxx` | eg. +08:00, Asia/Shanghai |
-| `show time_zone` | show cli time zone |
-| `set fetch_size=xxx` | set fetch size when querying data from server |
-| `show fetch_size` | show fetch size |
-| `set max_display_num=xxx` | set max lines for cli to output, -1 equals to unlimited |
-| `help` | Get hints for CLI special commands |
-| `exit/quit` | Exit CLI |
-
-### Note on using the CLI with OpenID Connect Auth enabled on Server side
-
-Openid connect (oidc) uses keycloack as the authority authentication service of oidc service
-
-
-#### configuration
-
-The configuration is located in iotdb-system.properties , set the author_provider_class is org.apache.iotdb.commons.auth.authorizer.OpenIdAuthorizer Openid service is enabled, and the default value is org.apache.iotdb.db.auth.authorizer.LocalFileAuthorizer Indicates that the openid service is not enabled.
-
-```
-authorizer_provider_class=org.apache.iotdb.commons.auth.authorizer.OpenIdAuthorizer
-```
-
-If the openid service is turned on, openid_URL is required,openID_url value is http://ip:port/realms/{realmsName}
-
-```
-openID_url=http://127.0.0.1:8080/realms/iotdb/
-```
-
-#### keycloack configuration
-
-1、Download the keycloack file (This tutorial is version 21.1.0) and start keycloack in keycloack/bin
-
-```shell
-Shell >cd bin
-Shell >./kc.sh start-dev
-```
-
-2、use url(https://ip:port) login keycloack, the first login needs to create a user
-
-
-3、Click administration console
-
-
-4、In the master menu on the left, click Create realm and enter Realm name to create a new realm
-
-
-
-
-
-5、Click the menu clients on the left to create clients
-
-
-
-6、Click user on the left menu to create user
-
-
-
-7、Click the newly created user ID, click the credentials navigation, enter the password and close the temporary option. The configuration of keycloud is completed
-
-
-
-8、To create a role, click Roles on the left menu and then click the Create Role button to add a role
-
-
-
-9、 Enter `iotdb_admin` in the Role Name and click the save button. Tip: `iotdb_admin` here cannot be any other name, otherwise even after successful login, you will not have permission to use iotdb's query, insert, create database, add users, roles and other functions
-
-
-
-10、Click on the User menu on the left and then click on the user in the user list to add the `iotdb_admin` role we just created for that user
-
-
-
-11、 Select Role Mappings, select the `iotdb_admin` role in Assign Role
-
-
-
-
-
-
-Tip: If the user role is adjusted, you need to regenerate the token and log in to iotdb again to take effect
-
-The above steps provide a way for keycloak to log into iotdb. For more ways, please refer to keycloak configuration
-
-If OIDC is enabled on server side then no username / passwort is needed but a valid Access Token from the OIDC Provider.
-So as username you use the token and the password has to be empty, e.g.
-
-```shell
-Shell > bash sbin/start-cli.sh -h 10.129.187.21 -p 6667 -u {my-access-token} -pw ""
-```
-
-Among them, you need to replace {my access token} (note, including {}) with your token, that is, the value corresponding to access_token. The password is empty and needs to be confirmed again.
-
-
-
-
-How to get the token is dependent on your OpenID Connect setup and not covered here.
-In the simplest case you can get this via the command line with the `passwort-grant`.
-For example, if you use keycloack as OIDC and you have a realm with a client `iotdb` defined as public you could use
-the following `curl` command to fetch a token (replace all `{}` with appropriate values).
-
-```shell
-curl -X POST "https://{your-keycloack-server}/realms/{your-realm}/protocol/openid-connect/token" \
- -H "Content-Type: application/x-www-form-urlencoded" \
- -d "username={username}" \
- -d "password={password}" \
- -d 'grant_type=password' \
- -d "client_id=iotdb-client"
-```
-
-The response looks something like
-
-```json
-{"access_token":"eyJhbGciOiJSUzI1NiIsInR5cCIgOiAiSldUIiwia2lkIiA6ICJxMS1XbTBvelE1TzBtUUg4LVNKYXAyWmNONE1tdWNXd25RV0tZeFpKNG93In0.eyJleHAiOjE1OTAzOTgwNzEsImlhdCI6MTU5MDM5Nzc3MSwianRpIjoiNjA0ZmYxMDctN2NiNy00NTRmLWIwYmQtY2M2ZDQwMjFiNGU4IiwiaXNzIjoiaHR0cDovL2F1dGguZGVtby5wcmFnbWF0aWNpbmR1c3RyaWVzLmRlL2F1dGgvcmVhbG1zL0lvVERCIiwiYXVkIjoiYWNjb3VudCIsInN1YiI6ImJhMzJlNDcxLWM3NzItNGIzMy04ZGE2LTZmZThhY2RhMDA3MyIsInR5cCI6IkJlYXJlciIsImF6cCI6ImlvdGRiIiwic2Vzc2lvbl9zdGF0ZSI6IjA2MGQyODYyLTE0ZWQtNDJmZS1 [...]
-```
-
-The interesting part here is the access token with the key `access_token`.
-This has to be passed as username (with parameter `-u`) and empty password to the CLI.
-
-### Batch Operation of Cli
-
--e parameter is designed for the Cli/shell tool in the situation where you would like to manipulate IoTDB in batches through scripts. By using the -e parameter, you can operate IoTDB without entering the cli's input mode.
-
-In order to avoid confusion between statements and other parameters, the current version only supports the -e parameter as the last parameter.
-
-The usage of -e parameter for Cli/shell is as follows:
-
-The Linux and MacOS system commands:
-
-```shell
-Shell > bash sbin/start-cli.sh -h {host} -p {rpcPort} -u {user} -pw {password} -e {sql for iotdb}
-```
-
-The Windows system commands:
-
-```shell
-Shell > sbin\start-cli.bat -h {host} -p {rpcPort} -u {user} -pw {password} -e {sql for iotdb}
-```
-
-In the Windows environment, the SQL statement of the -e parameter needs to use ` `` ` to replace `" "`
-
-In order to better explain the use of -e parameter, take following as an example(On linux system).
-
-Suppose you want to create a database root.demo to a newly launched IoTDB, create a timeseries root.demo.s1 and insert three data points into it. With -e parameter, you could write a shell like this:
-
-```shell
-# !/bin/bash
-
-host=127.0.0.1
-rpcPort=6667
-user=root
-pass=root
-
-bash ./sbin/start-cli.sh -h ${host} -p ${rpcPort} -u ${user} -pw ${pass} -e "create database root.demo"
-bash ./sbin/start-cli.sh -h ${host} -p ${rpcPort} -u ${user} -pw ${pass} -e "create timeseries root.demo.s1 WITH DATATYPE=INT32, ENCODING=RLE"
-bash ./sbin/start-cli.sh -h ${host} -p ${rpcPort} -u ${user} -pw ${pass} -e "insert into root.demo(timestamp,s1) values(1,10)"
-bash ./sbin/start-cli.sh -h ${host} -p ${rpcPort} -u ${user} -pw ${pass} -e "insert into root.demo(timestamp,s1) values(2,11)"
-bash ./sbin/start-cli.sh -h ${host} -p ${rpcPort} -u ${user} -pw ${pass} -e "insert into root.demo(timestamp,s1) values(3,12)"
-bash ./sbin/start-cli.sh -h ${host} -p ${rpcPort} -u ${user} -pw ${pass} -e "select s1 from root.demo"
-```
-
-The results are shown in the figure, which are consistent with the Cli and jdbc operations.
-
-```shell
- Shell > bash ./shell.sh
-+-----------------------------+------------+
-| Time|root.demo.s1|
-+-----------------------------+------------+
-|1970-01-01T08:00:00.001+08:00| 10|
-|1970-01-01T08:00:00.002+08:00| 11|
-|1970-01-01T08:00:00.003+08:00| 12|
-+-----------------------------+------------+
-Total line number = 3
-It costs 0.267s
-```
-
-It should be noted that the use of the -e parameter in shell scripts requires attention to the escaping of special characters.
+-->
\ No newline at end of file
diff --git a/src/UserGuide/V1.3.x/Tools-System/CLI.md b/src/UserGuide/dev-1.3/Tools-System/CLI_apache.md
similarity index 100%
copy from src/UserGuide/V1.3.x/Tools-System/CLI.md
copy to src/UserGuide/dev-1.3/Tools-System/CLI_apache.md
diff --git a/src/UserGuide/dev-1.3/Tools-System/CLI.md b/src/UserGuide/dev-1.3/Tools-System/CLI_timecho.md
similarity index 96%
copy from src/UserGuide/dev-1.3/Tools-System/CLI.md
copy to src/UserGuide/dev-1.3/Tools-System/CLI_timecho.md
index 47a03895..dfc5fdc5 100644
--- a/src/UserGuide/dev-1.3/Tools-System/CLI.md
+++ b/src/UserGuide/dev-1.3/Tools-System/CLI_timecho.md
@@ -26,21 +26,7 @@ IoTDB provides Cli/shell tools for users to interact with IoTDB server in comman
> Note: In this document, \$IOTDB\_HOME represents the path of the IoTDB installation directory.
-## Installation
-
-If you use the source code version of IoTDB, then under the root path of IoTDB, execute:
-
-```shell
-> mvn clean package -pl iotdb-client/cli -am -DskipTests -P get-jar-with-dependencies
-```
-
-After build, the IoTDB Cli will be in the folder "cli/target/iotdb-cli-{project.version}".
-
-If you download the binary version, then the Cli can be used directly in sbin folder.
-
-## Running
-
-### Running Cli
+## Running Cli
After installation, there is a default user in IoTDB: `root`, and the
default password is `root`. Users can use this username to try IoTDB Cli/Shell tool. The cli startup script is the `start-cli` file under the \$IOTDB\_HOME/bin folder. When starting the script, you need to specify the IP and PORT. (Make sure the IoTDB cluster is running properly when you use Cli/Shell tool to connect to it.)
@@ -80,7 +66,7 @@ IoTDB>
Enter ```quit``` or `exit` can exit Cli.
-### Cli Parameters
+## Cli Parameters
| Parameter name | Parameter type | Required | Description | Example |
| :--------------------------- | :------------------------- | :------- | :----------------------------------------------------------- | :------------------ |
@@ -109,7 +95,7 @@ The Windows system startup commands are as follows:
Shell > sbin\start-cli.bat -h 10.129.187.21 -p 6667 -u root -pw root -disableISO8601 -maxPRC 10
```
-### CLI Special Command
+## CLI Special Command
Special commands of Cli are below.
@@ -125,12 +111,12 @@ Special commands of Cli are below.
| `help` | Get hints for CLI special commands |
| `exit/quit` | Exit CLI |
-### Note on using the CLI with OpenID Connect Auth enabled on Server side
+## Note on using the CLI with OpenID Connect Auth enabled on Server side
Openid connect (oidc) uses keycloack as the authority authentication service of oidc service
-#### configuration
+### configuration
The configuration is located in iotdb-system.properties , set the author_provider_class is org.apache.iotdb.commons.auth.authorizer.OpenIdAuthorizer Openid service is enabled, and the default value is org.apache.iotdb.db.auth.authorizer.LocalFileAuthorizer Indicates that the openid service is not enabled.
@@ -144,7 +130,7 @@ If the openid service is turned on, openid_URL is required,openID_url value is h
openID_url=http://127.0.0.1:8080/realms/iotdb/
```
-#### keycloack configuration
+### keycloack configuration
1、Download the keycloack file (This tutorial is version 21.1.0) and start keycloack in keycloack/bin
@@ -235,7 +221,7 @@ The response looks something like
The interesting part here is the access token with the key `access_token`.
This has to be passed as username (with parameter `-u`) and empty password to the CLI.
-### Batch Operation of Cli
+## Batch Operation of Cli
-e parameter is designed for the Cli/shell tool in the situation where you would like to manipulate IoTDB in batches through scripts. By using the -e parameter, you can operate IoTDB without entering the cli's input mode.
diff --git a/src/UserGuide/latest/Tools-System/CLI.md b/src/UserGuide/latest/Tools-System/CLI.md
index 665af205..03580faf 100644
--- a/src/UserGuide/latest/Tools-System/CLI.md
+++ b/src/UserGuide/latest/Tools-System/CLI.md
@@ -1,3 +1,6 @@
+---
+redirectTo: CLI_apache.html
+---
<!--
Licensed to the Apache Software Foundation (ASF) under one
@@ -17,291 +20,4 @@
specific language governing permissions and limitations
under the License.
--->
-
-# Command Line Interface (CLI)
-
-
-IoTDB provides Cli/shell tools for users to interact with IoTDB server in command lines. This document shows how Cli/shell tool works and the meaning of its parameters.
-
-> Note: In this document, \$IOTDB\_HOME represents the path of the IoTDB installation directory.
-
-## 1. Installation
-
-If you use the source code version of IoTDB, then under the root path of IoTDB, execute:
-
-```shell
-> mvn clean package -pl iotdb-client/cli -am -DskipTests -P get-jar-with-dependencies
-```
-
-After build, the IoTDB Cli will be in the folder "cli/target/iotdb-cli-{project.version}".
-
-If you download the binary version, then the Cli can be used directly in sbin folder.
-
-## 2. Running
-
-### 2.1 Running Cli
-
-After installation, there is a default user in IoTDB: `root`, and the
-default password is `root`. Users can use this username to try IoTDB Cli/Shell tool. The cli startup script is the `start-cli` file under the \$IOTDB\_HOME/bin folder. When starting the script, you need to specify the IP and PORT. (Make sure the IoTDB cluster is running properly when you use Cli/Shell tool to connect to it.)
-
-Here is an example where the cluster is started locally and the user has not changed the running port. The default rpc port is
-6667 <br>
-If you need to connect to the remote DataNode or changes
-the rpc port number of the DataNode running, set the specific IP and RPC PORT at -h and -p.<br>
-You also can set your own environment variable at the front of the start script
-
-The Linux and MacOS system startup commands are as follows:
-
-```shell
-Shell > bash sbin/start-cli.sh -h 127.0.0.1 -p 6667 -u root -pw root
-```
-
-The Windows system startup commands are as follows:
-
-```shell
-# Before version V2.0.4.x
-Shell > sbin\start-cli.bat -h 127.0.0.1 -p 6667 -u root -pw root
-
-# V2.0.4.x and later versions
-Shell > sbin\windows\start-cli.bat -h 127.0.0.1 -p 6667 -u root -pw root
-```
-
-After operating these commands, the cli can be started successfully. The successful status will be as follows:
-
-```
- _____ _________ ______ ______
-|_ _| | _ _ ||_ _ `.|_ _ \
- | | .--.|_/ | | \_| | | `. \ | |_) |
- | | / .'`\ \ | | | | | | | __'.
- _| |_| \__. | _| |_ _| |_.' /_| |__) |
-|_____|'.__.' |_____| |______.'|_______/ version <version>
-
-
-Successfully login at 127.0.0.1:6667
-IoTDB>
-```
-
-Enter ```quit``` or `exit` can exit Cli.
-
-### 2.2 Cli Parameters
-
-| Parameter name | Parameter type | Required | Description | Example |
-| :--------------------------- | :------------------------- | :------- | :----------------------------------------------------------- | :------------------ |
-| -disableISO8601 | No parameters | No | If this parameter is set, IoTDB will print the timestamp in digital form | -disableISO8601 |
-| -h <`host`> | string, no quotation marks | Yes | The IP address of the IoTDB server | -h 10.129.187.21 |
-| -help | No parameters | No | Print help information for IoTDB | -help |
-| -p <`rpcPort`> | int | Yes | The rpc port number of the IoTDB server. IoTDB runs on rpc port 6667 by default | -p 6667 |
-| -pw <`password`> | string, no quotation marks | No | The password used for IoTDB to connect to the server. If no password is entered, IoTDB will ask for password in Cli command | -pw root |
-| -u <`username`> | string, no quotation marks | Yes | User name used for IoTDB to connect the server | -u root |
-| -maxPRC <`maxPrintRowCount`> | int | No | Set the maximum number of rows that IoTDB returns | -maxPRC 10 |
-| -e <`execute`> | string | No | manipulate IoTDB in batches without entering cli input mode | -e "show databases" |
-| -c | empty | No | If the server enables `rpc_thrift_compression_enable=true`, then cli must use `-c` | -c |
-
-Following is a cli command which connects the host with IP
-10.129.187.21, rpc port 6667, username "root", password "root", and prints the timestamp in digital form. The maximum number of lines displayed on the IoTDB command line is 10.
-
-The Linux and MacOS system startup commands are as follows:
-
-```shell
-Shell > bash sbin/start-cli.sh -h 10.129.187.21 -p 6667 -u root -pw root -disableISO8601 -maxPRC 10
-```
-
-The Windows system startup commands are as follows:
-
-```shell
-# Before version V2.0.4.x
-Shell > sbin\start-cli.bat -h 10.129.187.21 -p 6667 -u root -pw root -disableISO8601 -maxPRC 10
-
-# # V2.0.4.x and later versions
-Shell > sbin\windows\start-cli.bat -h 10.129.187.21 -p 6667 -u root -pw root -disableISO8601 -maxPRC 10
-```
-
-### 2.3 CLI Special Command
-
-Special commands of Cli are below.
-
-| Command | Description / Example |
-| :-------------------------- | :------------------------------------------------------ |
-| `set time_display_type=xxx` | eg. long, default, ISO8601, yyyy-MM-dd HH:mm:ss |
-| `show time_display_type` | show time display type |
-| `set time_zone=xxx` | eg. +08:00, Asia/Shanghai |
-| `show time_zone` | show cli time zone |
-| `set fetch_size=xxx` | set fetch size when querying data from server |
-| `show fetch_size` | show fetch size |
-| `set max_display_num=xxx` | set max lines for cli to output, -1 equals to unlimited |
-| `help` | Get hints for CLI special commands |
-| `exit/quit` | Exit CLI |
-
-### 2.4 Note on using the CLI with OpenID Connect Auth enabled on Server side
-
-Openid connect (oidc) uses keycloack as the authority authentication service of oidc service
-
-
-#### configuration
-
-The configuration is located in iotdb-system.properties , set the author_provider_class is org.apache.iotdb.commons.auth.authorizer.OpenIdAuthorizer Openid service is enabled, and the default value is org.apache.iotdb.db.auth.authorizer.LocalFileAuthorizer Indicates that the openid service is not enabled.
-
-```
-authorizer_provider_class=org.apache.iotdb.commons.auth.authorizer.OpenIdAuthorizer
-```
-
-If the openid service is turned on, openid_URL is required,openID_url value is http://ip:port/realms/{realmsName}
-
-```
-openID_url=http://127.0.0.1:8080/realms/iotdb/
-```
-
-#### keycloack configuration
-
-1、Download the keycloack file (This tutorial is version 21.1.0) and start keycloack in keycloack/bin
-
-```shell
-Shell >cd bin
-Shell >./kc.sh start-dev
-```
-
-2、use url(https://ip:port) login keycloack, the first login needs to create a user
-
-
-3、Click administration console
-
-
-4、In the master menu on the left, click Create realm and enter Realm name to create a new realm
-
-
-
-
-
-5、Click the menu clients on the left to create clients
-
-
-
-6、Click user on the left menu to create user
-
-
-
-7、Click the newly created user ID, click the credentials navigation, enter the password and close the temporary option. The configuration of keycloud is completed
-
-
-
-8、To create a role, click Roles on the left menu and then click the Create Role button to add a role
-
-
-
-9、 Enter `iotdb_admin` in the Role Name and click the save button. Tip: `iotdb_admin` here cannot be any other name, otherwise even after successful login, you will not have permission to use iotdb's query, insert, create database, add users, roles and other functions
-
-
-
-10、Click on the User menu on the left and then click on the user in the user list to add the `iotdb_admin` role we just created for that user
-
-
-
-11、 Select Role Mappings, select the `iotdb_admin` role in Assign Role
-
-
-
-
-
-
-Tip: If the user role is adjusted, you need to regenerate the token and log in to iotdb again to take effect
-
-The above steps provide a way for keycloak to log into iotdb. For more ways, please refer to keycloak configuration
-
-If OIDC is enabled on server side then no username / passwort is needed but a valid Access Token from the OIDC Provider.
-So as username you use the token and the password has to be empty, e.g.
-
-```shell
-Shell > bash sbin/start-cli.sh -h 10.129.187.21 -p 6667 -u {my-access-token} -pw ""
-```
-
-Among them, you need to replace {my access token} (note, including {}) with your token, that is, the value corresponding to access_token. The password is empty and needs to be confirmed again.
-
-
-
-
-How to get the token is dependent on your OpenID Connect setup and not covered here.
-In the simplest case you can get this via the command line with the `passwort-grant`.
-For example, if you use keycloack as OIDC and you have a realm with a client `iotdb` defined as public you could use
-the following `curl` command to fetch a token (replace all `{}` with appropriate values).
-
-```shell
-curl -X POST "https://{your-keycloack-server}/realms/{your-realm}/protocol/openid-connect/token" \
- -H "Content-Type: application/x-www-form-urlencoded" \
- -d "username={username}" \
- -d "password={password}" \
- -d 'grant_type=password' \
- -d "client_id=iotdb-client"
-```
-
-The response looks something like
-
-```json
-{"access_token":"eyJhbGciOiJSUzI1NiIsInR5cCIgOiAiSldUIiwia2lkIiA6ICJxMS1XbTBvelE1TzBtUUg4LVNKYXAyWmNONE1tdWNXd25RV0tZeFpKNG93In0.eyJleHAiOjE1OTAzOTgwNzEsImlhdCI6MTU5MDM5Nzc3MSwianRpIjoiNjA0ZmYxMDctN2NiNy00NTRmLWIwYmQtY2M2ZDQwMjFiNGU4IiwiaXNzIjoiaHR0cDovL2F1dGguZGVtby5wcmFnbWF0aWNpbmR1c3RyaWVzLmRlL2F1dGgvcmVhbG1zL0lvVERCIiwiYXVkIjoiYWNjb3VudCIsInN1YiI6ImJhMzJlNDcxLWM3NzItNGIzMy04ZGE2LTZmZThhY2RhMDA3MyIsInR5cCI6IkJlYXJlciIsImF6cCI6ImlvdGRiIiwic2Vzc2lvbl9zdGF0ZSI6IjA2MGQyODYyLTE0ZWQtNDJmZS1 [...]
-```
-
-The interesting part here is the access token with the key `access_token`.
-This has to be passed as username (with parameter `-u`) and empty password to the CLI.
-
-### 2.5 Batch Operation of Cli
-
--e parameter is designed for the Cli/shell tool in the situation where you would like to manipulate IoTDB in batches through scripts. By using the -e parameter, you can operate IoTDB without entering the cli's input mode.
-
-In order to avoid confusion between statements and other parameters, the current version only supports the -e parameter as the last parameter.
-
-The usage of -e parameter for Cli/shell is as follows:
-
-The Linux and MacOS system commands:
-
-```shell
-Shell > bash sbin/start-cli.sh -h {host} -p {rpcPort} -u {user} -pw {password} -e {sql for iotdb}
-```
-
-The Windows system commands:
-
-```shell
-# Before version V2.0.4.x
-Shell > sbin\start-cli.bat -h {host} -p {rpcPort} -u {user} -pw {password} -e {sql for iotdb}
-
-# V2.0.4.x and later versions
-Shell > sbin\windows\start-cli.bat -h {host} -p {rpcPort} -u {user} -pw {password} -e {sql for iotdb}
-```
-
-In the Windows environment, the SQL statement of the -e parameter needs to use ` `` ` to replace `" "`
-
-In order to better explain the use of -e parameter, take following as an example(On linux system).
-
-Suppose you want to create a database root.demo to a newly launched IoTDB, create a timeseries root.demo.s1 and insert three data points into it. With -e parameter, you could write a shell like this:
-
-```shell
-# !/bin/bash
-
-host=127.0.0.1
-rpcPort=6667
-user=root
-pass=root
-
-bash ./sbin/start-cli.sh -h ${host} -p ${rpcPort} -u ${user} -pw ${pass} -e "create database root.demo"
-bash ./sbin/start-cli.sh -h ${host} -p ${rpcPort} -u ${user} -pw ${pass} -e "create timeseries root.demo.s1 WITH DATATYPE=INT32, ENCODING=RLE"
-bash ./sbin/start-cli.sh -h ${host} -p ${rpcPort} -u ${user} -pw ${pass} -e "insert into root.demo(timestamp,s1) values(1,10)"
-bash ./sbin/start-cli.sh -h ${host} -p ${rpcPort} -u ${user} -pw ${pass} -e "insert into root.demo(timestamp,s1) values(2,11)"
-bash ./sbin/start-cli.sh -h ${host} -p ${rpcPort} -u ${user} -pw ${pass} -e "insert into root.demo(timestamp,s1) values(3,12)"
-bash ./sbin/start-cli.sh -h ${host} -p ${rpcPort} -u ${user} -pw ${pass} -e "select s1 from root.demo"
-```
-
-The results are shown in the figure, which are consistent with the Cli and jdbc operations.
-
-```shell
- Shell > bash ./shell.sh
-+-----------------------------+------------+
-| Time|root.demo.s1|
-+-----------------------------+------------+
-|1970-01-01T08:00:00.001+08:00| 10|
-|1970-01-01T08:00:00.002+08:00| 11|
-|1970-01-01T08:00:00.003+08:00| 12|
-+-----------------------------+------------+
-Total line number = 3
-It costs 0.267s
-```
-
-It should be noted that the use of the -e parameter in shell scripts requires attention to the escaping of special characters.
+-->
\ No newline at end of file
diff --git a/src/UserGuide/Master/Tree/Tools-System/CLI.md b/src/UserGuide/latest/Tools-System/CLI_apache.md
similarity index 100%
copy from src/UserGuide/Master/Tree/Tools-System/CLI.md
copy to src/UserGuide/latest/Tools-System/CLI_apache.md
diff --git a/src/UserGuide/latest/Tools-System/CLI.md b/src/UserGuide/latest/Tools-System/CLI_timecho.md
similarity index 96%
copy from src/UserGuide/latest/Tools-System/CLI.md
copy to src/UserGuide/latest/Tools-System/CLI_timecho.md
index 665af205..a756abe3 100644
--- a/src/UserGuide/latest/Tools-System/CLI.md
+++ b/src/UserGuide/latest/Tools-System/CLI_timecho.md
@@ -26,21 +26,7 @@ IoTDB provides Cli/shell tools for users to interact with IoTDB server in comman
> Note: In this document, \$IOTDB\_HOME represents the path of the IoTDB installation directory.
-## 1. Installation
-
-If you use the source code version of IoTDB, then under the root path of IoTDB, execute:
-
-```shell
-> mvn clean package -pl iotdb-client/cli -am -DskipTests -P get-jar-with-dependencies
-```
-
-After build, the IoTDB Cli will be in the folder "cli/target/iotdb-cli-{project.version}".
-
-If you download the binary version, then the Cli can be used directly in sbin folder.
-
-## 2. Running
-
-### 2.1 Running Cli
+## 1. Running Cli
After installation, there is a default user in IoTDB: `root`, and the
default password is `root`. Users can use this username to try IoTDB Cli/Shell tool. The cli startup script is the `start-cli` file under the \$IOTDB\_HOME/bin folder. When starting the script, you need to specify the IP and PORT. (Make sure the IoTDB cluster is running properly when you use Cli/Shell tool to connect to it.)
@@ -84,7 +70,7 @@ IoTDB>
Enter ```quit``` or `exit` can exit Cli.
-### 2.2 Cli Parameters
+## 2. Cli Parameters
| Parameter name | Parameter type | Required | Description | Example |
| :--------------------------- | :------------------------- | :------- | :----------------------------------------------------------- | :------------------ |
@@ -117,7 +103,7 @@ Shell > sbin\start-cli.bat -h 10.129.187.21 -p 6667 -u root -pw root -disableISO
Shell > sbin\windows\start-cli.bat -h 10.129.187.21 -p 6667 -u root -pw root -disableISO8601 -maxPRC 10
```
-### 2.3 CLI Special Command
+## 3. CLI Special Command
Special commands of Cli are below.
@@ -133,7 +119,7 @@ Special commands of Cli are below.
| `help` | Get hints for CLI special commands |
| `exit/quit` | Exit CLI |
-### 2.4 Note on using the CLI with OpenID Connect Auth enabled on Server side
+## 4. Note on using the CLI with OpenID Connect Auth enabled on Server side
Openid connect (oidc) uses keycloack as the authority authentication service of oidc service
@@ -243,7 +229,7 @@ The response looks something like
The interesting part here is the access token with the key `access_token`.
This has to be passed as username (with parameter `-u`) and empty password to the CLI.
-### 2.5 Batch Operation of Cli
+## 5. Batch Operation of Cli
-e parameter is designed for the Cli/shell tool in the situation where you would like to manipulate IoTDB in batches through scripts. By using the -e parameter, you can operate IoTDB without entering the cli's input mode.
diff --git a/src/zh/UserGuide/Master/Tree/Tools-System/CLI.md b/src/zh/UserGuide/Master/Tree/Tools-System/CLI.md
index 23d3470b..03580faf 100644
--- a/src/zh/UserGuide/Master/Tree/Tools-System/CLI.md
+++ b/src/zh/UserGuide/Master/Tree/Tools-System/CLI.md
@@ -1,3 +1,6 @@
+---
+redirectTo: CLI_apache.html
+---
<!--
Licensed to the Apache Software Foundation (ASF) under one
@@ -17,272 +20,4 @@
specific language governing permissions and limitations
under the License.
--->
-
-# 命令行工具
-
-IOTDB 为用户提供 cli/Shell 工具用于启动客户端和服务端程序。下面介绍每个 cli/Shell 工具的运行方式和相关参数。
-> \$IOTDB\_HOME 表示 IoTDB 的安装目录所在路径。
-
-## 1. 安装
-如果使用源码版,可以在 iotdb 的根目录下执行
-
-```shell
-> mvn clean package -pl cli -am -DskipTests
-```
-
-在生成完毕之后,IoTDB 的 Cli 工具位于文件夹"cli/target/iotdb-cli-{project.version}"中。
-
-如果你下载的是二进制版,那么 Cli 可以在 sbin 文件夹下直接找到。
-
-## 2. 运行
-
-### 2.1 Cli 运行方式
-安装后的 IoTDB 中有一个默认用户:`root`,默认密码为`root`。用户可以使用该用户尝试运行 IoTDB 客户端以测试服务器是否正常启动。客户端启动脚本为$IOTDB_HOME/sbin 文件夹下的`start-cli`脚本。启动脚本时需要指定运行 IP 和 RPC PORT。以下为服务器在本机启动,且用户未更改运行端口号的示例,默认端口为 6667。若用户尝试连接远程服务器或更改了服务器运行的端口号,请在-h 和-p 项处使用服务器的 IP 和 RPC PORT。<br>
-用户也可以在启动脚本的最前方设置自己的环境变量,如 JAVA_HOME 等。
-
-Linux 系统与 MacOS 系统启动命令如下:
-
-```shell
-Shell > bash sbin/start-cli.sh -h 127.0.0.1 -p 6667 -u root -pw root
-```
-Windows 系统启动命令如下:
-
-```shell
-# V2.0.4.x 版本之前
-Shell > sbin\start-cli.bat -h 127.0.0.1 -p 6667 -u root -pw root
-
-# V2.0.4.x 版本及之后
-Shell > sbin\windows\start-cli.bat -h 127.0.0.1 -p 6667 -u root -pw root
-```
-回车后即可成功启动客户端。启动后出现如图提示即为启动成功。
-
-```
- _____ _________ ______ ______
-|_ _| | _ _ ||_ _ `.|_ _ \
- | | .--.|_/ | | \_| | | `. \ | |_) |
- | | / .'`\ \ | | | | | | | __'.
- _| |_| \__. | _| |_ _| |_.' /_| |__) |
-|_____|'.__.' |_____| |______.'|_______/ version <version>
-
-Successfully login at 127.0.0.1:6667
-```
-输入`quit`或`exit`可退出 cli 结束本次会话,cli 输出`quit normally`表示退出成功。
-
-### 2.2 Cli 运行参数
-
-|参数名|参数类型|是否为必需参数| 说明| 例子 |
-|:---|:---|:---|:---|:---|
-|-disableISO8601 |没有参数 | 否 |如果设置了这个参数,IoTDB 将以数字的形式打印时间戳 (timestamp)。|-disableISO8601|
-|-h <`host`> |string 类型,不需要引号|是|IoTDB 客户端连接 IoTDB 服务器的 IP 地址。|-h 10.129.187.21|
-|-help|没有参数|否|打印 IoTDB 的帮助信息|-help|
-|-p <`rpcPort`>|int 类型|是|IoTDB 连接服务器的端口号,IoTDB 默认运行在 6667 端口。|-p 6667|
-|-pw <`password`>|string 类型,不需要引号|否|IoTDB 连接服务器所使用的密码。如果没有输入密码 IoTDB 会在 Cli 端提示输入密码。|-pw root|
-|-u <`username`>|string 类型,不需要引号|是|IoTDB 连接服务器锁使用的用户名。|-u root|
-|-maxPRC <`maxPrintRowCount`>|int 类型|否|设置 IoTDB 返回客户端命令行中所显示的最大行数。|-maxPRC 10|
-|-e <`execute`> |string 类型|否|在不进入客户端输入模式的情况下,批量操作 IoTDB|-e "show databases"|
-|-c | 空 | 否 | 如果服务器设置了 `rpc_thrift_compression_enable=true`, 则 CLI 必须使用 `-c` | -c |
-
-下面展示一条客户端命令,功能是连接 IP 为 10.129.187.21 的主机,端口为 6667 ,用户名为 root,密码为 root,以数字的形式打印时间戳,IoTDB 命令行显示的最大行数为 10。
-
-Linux 系统与 MacOS 系统启动命令如下:
-
-```shell
-Shell > bash sbin/start-cli.sh -h 10.129.187.21 -p 6667 -u root -pw root -disableISO8601 -maxPRC 10
-```
-Windows 系统启动命令如下:
-
-```shell
-# V2.0.4.x 版本之前
-Shell > sbin\start-cli.bat -h 10.129.187.21 -p 6667 -u root -pw root -disableISO8601 -maxPRC 10
-
-# V2.0.4.x 版本及之后
-Shell > sbin\windows\start-cli.bat -h 10.129.187.21 -p 6667 -u root -pw root -disableISO8601 -maxPRC 10
-```
-
-### 2.3 CLI 特殊命令
-下面列举了一些CLI的特殊命令。
-
-| 命令 | 描述 / 例子 |
-|:---|:---|
-| `set time_display_type=xxx` | 例如: long, default, ISO8601, yyyy-MM-dd HH:mm:ss |
-| `show time_display_type` | 显示时间显示方式 |
-| `set time_zone=xxx` | 例如: +08:00, Asia/Shanghai |
-| `show time_zone` | 显示CLI的时区 |
-| `set fetch_size=xxx` | 设置从服务器查询数据时的读取条数 |
-| `show fetch_size` | 显示读取条数的大小 |
-| `set max_display_num=xxx` | 设置 CLI 一次展示的最大数据条数, 设置为-1表示无限制 |
-| `help` | 获取CLI特殊命令的提示 |
-| `exit/quit` | 退出CLI |
-
-### 2.4 使用 OpenID 作为用户名认证登录
-
-OpenID Connect (OIDC) 使用 keycloack 作为 OIDC 服务权限认证服务。
-
-#### 配置
-配置位于 iotdb-system.properties,设定 authorizer_provider_class 为 org.apache.iotdb.commons.auth.authorizer.OpenIdAuthorizer 则开启了 openID 服务,默认情况下值为 org.apache.iotdb.commons.auth.authorizer.LocalFileAuthorizer 表示没有开启 openID 服务。
-
-```
-authorizer_provider_class=org.apache.iotdb.commons.auth.authorizer.OpenIdAuthorizer
-```
-如果开启了 openID 服务则 openID_url 为必填项,openID_url 值为 http://ip:port/realms/{realmsName}
-
-```
-openID_url=http://127.0.0.1:8080/realms/iotdb/
-```
-####keycloack 配置
-
-1、下载 keycloack 程序(此教程为21.1.0版本),在 keycloack/bin 中启动 keycloack
-
-```shell
-Shell > cd bin
-Shell > ./kc.sh start-dev
-```
-2、使用 https://ip:port 登陆 keycloack, 首次登陆需要创建用户
-
-
-
-3、点击 Administration Console 进入管理端
-
-
-
-4、在左侧的 Master 菜单点击 Create Realm, 输入 Realm Name 创建一个新的 Realm
-
-
-
-
-
-5、点击左侧菜单 Clients,创建 client
-
-
-
-6、点击左侧菜单 User,创建 user
-
-
-
-7、点击新创建的用户 id,点击 Credentials 导航输入密码和关闭 Temporary 选项,至此 keyclork 配置完成
-
-
-
-8、创建角色,点击左侧菜单的 Roles然后点击Create Role 按钮添加角色
-
-
-
-9、在Role Name 中输入`iotdb_admin`,点击save 按钮。提示:这里的`iotdb_admin`不能为其他名称否则即使登陆成功后也将无权限使用iotdb的查询、插入、创建 database、添加用户、角色等功能
-
-
-
-10、点击左侧的User 菜单然后点击用户列表中的用户为该用户添加我们刚创建的`iotdb_admin`角色
-
-
-
-11、选择Role Mappings ,在Assign role选择`iotdb_admin`增加角色
-
-
-
-
-
-提示:如果用户角色有调整需要重新生成token并且重新登陆iotdb才会生效
-
-以上步骤提供了一种 keycloak 登陆 iotdb 方式,更多方式请参考 keycloak 配置
-
-若对应的 IoTDB 服务器开启了使用 OpenID Connect (OIDC) 作为权限认证服务,那么就不再需要使用用户名密码进行登录。
-替而代之的是使用 Token,以及空密码。
-此时,登录命令如下:
-
-```shell
-Shell > bash sbin/start-cli.sh -h 10.129.187.21 -p 6667 -u {my-access-token} -pw ""
-```
-
-其中,需要将{my-access-token} (注意,包括{})替换成你的 token,即 access_token 对应的值。密码为空需要再次确认。
-
-
-
-如何获取 token 取决于你的 OIDC 设置。 最简单的一种情况是使用`password-grant`。例如,假设你在用 keycloack 作为你的 OIDC 服务,
-并且你在 keycloack 中有一个被定义成 public 的`iotdb`客户的 realm,那么你可以使用如下`curl`命令获得 token。
-(注意例子中的{}和里面的内容需要替换成具体的服务器地址和 realm 名字):
-```shell
-curl -X POST "http://{your-keycloack-server}/realms/{your-realm}/protocol/openid-connect/token" \ -H "Content-Type: application/x-www-form-urlencoded" \
- -d "username={username}" \
- -d "password={password}" \
- -d 'grant_type=password' \
- -d "client_id=iotdb-client"
-```
-
-示例结果如下:
-
-```json
-{"access_token":"eyJhbGciOiJSUzI1NiIsInR5cCIgOiAiSldUIiwia2lkIiA6ICJxMS1XbTBvelE1TzBtUUg4LVNKYXAyWmNONE1tdWNXd25RV0tZeFpKNG93In0.eyJleHAiOjE1OTAzOTgwNzEsImlhdCI6MTU5MDM5Nzc3MSwianRpIjoiNjA0ZmYxMDctN2NiNy00NTRmLWIwYmQtY2M2ZDQwMjFiNGU4IiwiaXNzIjoiaHR0cDovL2F1dGguZGVtby5wcmFnbWF0aWNpbmR1c3RyaWVzLmRlL2F1dGgvcmVhbG1zL0lvVERCIiwiYXVkIjoiYWNjb3VudCIsInN1YiI6ImJhMzJlNDcxLWM3NzItNGIzMy04ZGE2LTZmZThhY2RhMDA3MyIsInR5cCI6IkJlYXJlciIsImF6cCI6ImlvdGRiIiwic2Vzc2lvbl9zdGF0ZSI6IjA2MGQyODYyLTE0ZWQtNDJmZS1 [...]
-```
-
-### 2.5 Cli 的批量操作
-当您想要通过脚本的方式通过 Cli / Shell 对 IoTDB 进行批量操作时,可以使用-e 参数。通过使用该参数,您可以在不进入客户端输入模式的情况下操作 IoTDB。
-
-为了避免 SQL 语句和其他参数混淆,现在只支持-e 参数作为最后的参数使用。
-
-针对 cli/Shell 工具的-e 参数用法如下:
-
-Linux 系统与 MacOS 指令:
-
-```shell
-Shell > bash sbin/start-cli.sh -h {host} -p {rpcPort} -u {user} -pw {password} -e {sql for iotdb}
-```
-
-Windows 系统指令
-```shell
-# V2.0.4.x 版本之前
-Shell > sbin\start-cli.bat -h {host} -p {rpcPort} -u {user} -pw {password} -e {sql for iotdb}
-
-# V2.0.4.x 版本及之后
-Shell > sbin\windows\start-cli.bat -h {host} -p {rpcPort} -u {user} -pw {password} -e {sql for iotdb}
-```
-
-在 Windows 环境下,-e 参数的 SQL 语句需要使用` `` `对于`" "`进行替换
-
-为了更好的解释-e 参数的使用,可以参考下面在 Linux 上执行的例子。
-
-假设用户希望对一个新启动的 IoTDB 进行如下操作:
-
-1. 创建名为 root.demo 的 database
-
-2. 创建名为 root.demo.s1 的时间序列
-
-3. 向创建的时间序列中插入三个数据点
-
-4. 查询验证数据是否插入成功
-
-那么通过使用 cli/Shell 工具的 -e 参数,可以采用如下的脚本:
-
-```shell
-# !/bin/bash
-
-host=127.0.0.1
-rpcPort=6667
-user=root
-pass=root
-
-bash ./sbin/start-cli.sh -h ${host} -p ${rpcPort} -u ${user} -pw ${pass} -e "CREATE DATABASE root.demo"
-bash ./sbin/start-cli.sh -h ${host} -p ${rpcPort} -u ${user} -pw ${pass} -e "create timeseries root.demo.s1 WITH DATATYPE=INT32, ENCODING=RLE"
-bash ./sbin/start-cli.sh -h ${host} -p ${rpcPort} -u ${user} -pw ${pass} -e "insert into root.demo(timestamp,s1) values(1,10)"
-bash ./sbin/start-cli.sh -h ${host} -p ${rpcPort} -u ${user} -pw ${pass} -e "insert into root.demo(timestamp,s1) values(2,11)"
-bash ./sbin/start-cli.sh -h ${host} -p ${rpcPort} -u ${user} -pw ${pass} -e "insert into root.demo(timestamp,s1) values(3,12)"
-bash ./sbin/start-cli.sh -h ${host} -p ${rpcPort} -u ${user} -pw ${pass} -e "select s1 from root.demo"
-```
-
-打印出来的结果显示如下,通过这种方式进行的操作与客户端的输入模式以及通过 JDBC 进行操作结果是一致的。
-
-```shell
- Shell > bash ./shell.sh
-+-----------------------------+------------+
-| Time|root.demo.s1|
-+-----------------------------+------------+
-|1970-01-01T08:00:00.001+08:00| 10|
-|1970-01-01T08:00:00.002+08:00| 11|
-|1970-01-01T08:00:00.003+08:00| 12|
-+-----------------------------+------------+
-Total line number = 3
-It costs 0.267s
-```
-
-需要特别注意的是,在脚本中使用 -e 参数时要对特殊字符进行转义。
-
+-->
\ No newline at end of file
diff --git a/src/zh/UserGuide/Master/Tree/Tools-System/CLI.md b/src/zh/UserGuide/Master/Tree/Tools-System/CLI_apache.md
similarity index 99%
copy from src/zh/UserGuide/Master/Tree/Tools-System/CLI.md
copy to src/zh/UserGuide/Master/Tree/Tools-System/CLI_apache.md
index 23d3470b..1adf00af 100644
--- a/src/zh/UserGuide/Master/Tree/Tools-System/CLI.md
+++ b/src/zh/UserGuide/Master/Tree/Tools-System/CLI_apache.md
@@ -130,7 +130,7 @@ authorizer_provider_class=org.apache.iotdb.commons.auth.authorizer.OpenIdAuthori
```
openID_url=http://127.0.0.1:8080/realms/iotdb/
```
-####keycloack 配置
+#### keycloack 配置
1、下载 keycloack 程序(此教程为21.1.0版本),在 keycloack/bin 中启动 keycloack
diff --git a/src/zh/UserGuide/Master/Tree/Tools-System/CLI.md b/src/zh/UserGuide/Master/Tree/Tools-System/CLI_timecho.md
similarity index 96%
copy from src/zh/UserGuide/Master/Tree/Tools-System/CLI.md
copy to src/zh/UserGuide/Master/Tree/Tools-System/CLI_timecho.md
index 23d3470b..c3d9f570 100644
--- a/src/zh/UserGuide/Master/Tree/Tools-System/CLI.md
+++ b/src/zh/UserGuide/Master/Tree/Tools-System/CLI_timecho.md
@@ -24,20 +24,7 @@
IOTDB 为用户提供 cli/Shell 工具用于启动客户端和服务端程序。下面介绍每个 cli/Shell 工具的运行方式和相关参数。
> \$IOTDB\_HOME 表示 IoTDB 的安装目录所在路径。
-## 1. 安装
-如果使用源码版,可以在 iotdb 的根目录下执行
-
-```shell
-> mvn clean package -pl cli -am -DskipTests
-```
-
-在生成完毕之后,IoTDB 的 Cli 工具位于文件夹"cli/target/iotdb-cli-{project.version}"中。
-
-如果你下载的是二进制版,那么 Cli 可以在 sbin 文件夹下直接找到。
-
-## 2. 运行
-
-### 2.1 Cli 运行方式
+## 1. Cli 运行方式
安装后的 IoTDB 中有一个默认用户:`root`,默认密码为`root`。用户可以使用该用户尝试运行 IoTDB 客户端以测试服务器是否正常启动。客户端启动脚本为$IOTDB_HOME/sbin 文件夹下的`start-cli`脚本。启动脚本时需要指定运行 IP 和 RPC PORT。以下为服务器在本机启动,且用户未更改运行端口号的示例,默认端口为 6667。若用户尝试连接远程服务器或更改了服务器运行的端口号,请在-h 和-p 项处使用服务器的 IP 和 RPC PORT。<br>
用户也可以在启动脚本的最前方设置自己的环境变量,如 JAVA_HOME 等。
@@ -69,7 +56,7 @@ Successfully login at 127.0.0.1:6667
```
输入`quit`或`exit`可退出 cli 结束本次会话,cli 输出`quit normally`表示退出成功。
-### 2.2 Cli 运行参数
+## 2. Cli 运行参数
|参数名|参数类型|是否为必需参数| 说明| 例子 |
|:---|:---|:---|:---|:---|
@@ -100,7 +87,7 @@ Shell > sbin\start-cli.bat -h 10.129.187.21 -p 6667 -u root -pw root -disableISO
Shell > sbin\windows\start-cli.bat -h 10.129.187.21 -p 6667 -u root -pw root -disableISO8601 -maxPRC 10
```
-### 2.3 CLI 特殊命令
+## 3. CLI 特殊命令
下面列举了一些CLI的特殊命令。
| 命令 | 描述 / 例子 |
@@ -115,11 +102,11 @@ Shell > sbin\windows\start-cli.bat -h 10.129.187.21 -p 6667 -u root -pw root -di
| `help` | 获取CLI特殊命令的提示 |
| `exit/quit` | 退出CLI |
-### 2.4 使用 OpenID 作为用户名认证登录
+## 4. 使用 OpenID 作为用户名认证登录
OpenID Connect (OIDC) 使用 keycloack 作为 OIDC 服务权限认证服务。
-#### 配置
+### 配置
配置位于 iotdb-system.properties,设定 authorizer_provider_class 为 org.apache.iotdb.commons.auth.authorizer.OpenIdAuthorizer 则开启了 openID 服务,默认情况下值为 org.apache.iotdb.commons.auth.authorizer.LocalFileAuthorizer 表示没有开启 openID 服务。
```
@@ -130,7 +117,7 @@ authorizer_provider_class=org.apache.iotdb.commons.auth.authorizer.OpenIdAuthori
```
openID_url=http://127.0.0.1:8080/realms/iotdb/
```
-####keycloack 配置
+### keycloack 配置
1、下载 keycloack 程序(此教程为21.1.0版本),在 keycloack/bin 中启动 keycloack
@@ -215,7 +202,7 @@ curl -X POST "http://{your-keycloack-server}/realms/{your-realm}/protocol/openid
{"access_token":"eyJhbGciOiJSUzI1NiIsInR5cCIgOiAiSldUIiwia2lkIiA6ICJxMS1XbTBvelE1TzBtUUg4LVNKYXAyWmNONE1tdWNXd25RV0tZeFpKNG93In0.eyJleHAiOjE1OTAzOTgwNzEsImlhdCI6MTU5MDM5Nzc3MSwianRpIjoiNjA0ZmYxMDctN2NiNy00NTRmLWIwYmQtY2M2ZDQwMjFiNGU4IiwiaXNzIjoiaHR0cDovL2F1dGguZGVtby5wcmFnbWF0aWNpbmR1c3RyaWVzLmRlL2F1dGgvcmVhbG1zL0lvVERCIiwiYXVkIjoiYWNjb3VudCIsInN1YiI6ImJhMzJlNDcxLWM3NzItNGIzMy04ZGE2LTZmZThhY2RhMDA3MyIsInR5cCI6IkJlYXJlciIsImF6cCI6ImlvdGRiIiwic2Vzc2lvbl9zdGF0ZSI6IjA2MGQyODYyLTE0ZWQtNDJmZS1 [...]
```
-### 2.5 Cli 的批量操作
+## 5. Cli 的批量操作
当您想要通过脚本的方式通过 Cli / Shell 对 IoTDB 进行批量操作时,可以使用-e 参数。通过使用该参数,您可以在不进入客户端输入模式的情况下操作 IoTDB。
为了避免 SQL 语句和其他参数混淆,现在只支持-e 参数作为最后的参数使用。
diff --git a/src/zh/UserGuide/V1.3.x/Tools-System/CLI.md b/src/zh/UserGuide/V1.3.x/Tools-System/CLI.md
index aaff8093..03580faf 100644
--- a/src/zh/UserGuide/V1.3.x/Tools-System/CLI.md
+++ b/src/zh/UserGuide/V1.3.x/Tools-System/CLI.md
@@ -1,3 +1,6 @@
+---
+redirectTo: CLI_apache.html
+---
<!--
Licensed to the Apache Software Foundation (ASF) under one
@@ -17,260 +20,4 @@
specific language governing permissions and limitations
under the License.
--->
-
-# SQL 命令行终端 (CLI)
-
-IOTDB 为用户提供 cli/Shell 工具用于启动客户端和服务端程序。下面介绍每个 cli/Shell 工具的运行方式和相关参数。
-> \$IOTDB\_HOME 表示 IoTDB 的安装目录所在路径。
-
-## 安装
-如果使用源码版,可以在 iotdb 的根目录下执行
-
-```shell
-> mvn clean package -pl cli -am -DskipTests
-```
-
-在生成完毕之后,IoTDB 的 Cli 工具位于文件夹"cli/target/iotdb-cli-{project.version}"中。
-
-如果你下载的是二进制版,那么 Cli 可以在 sbin 文件夹下直接找到。
-
-## 运行
-
-### Cli 运行方式
-安装后的 IoTDB 中有一个默认用户:`root`,默认密码为`root`。用户可以使用该用户尝试运行 IoTDB 客户端以测试服务器是否正常启动。客户端启动脚本为$IOTDB_HOME/sbin 文件夹下的`start-cli`脚本。启动脚本时需要指定运行 IP 和 RPC PORT。以下为服务器在本机启动,且用户未更改运行端口号的示例,默认端口为 6667。若用户尝试连接远程服务器或更改了服务器运行的端口号,请在-h 和-p 项处使用服务器的 IP 和 RPC PORT。<br>
-用户也可以在启动脚本的最前方设置自己的环境变量,如 JAVA_HOME 等 (对于 linux 用户,脚本路径为:"/sbin/start-cli.sh"; 对于 windows 用户,脚本路径为:"/sbin/start-cli.bat")
-
-Linux 系统与 MacOS 系统启动命令如下:
-
-```shell
-Shell > bash sbin/start-cli.sh -h 127.0.0.1 -p 6667 -u root -pw root
-```
-Windows 系统启动命令如下:
-
-```shell
-Shell > sbin\start-cli.bat -h 127.0.0.1 -p 6667 -u root -pw root
-```
-回车后即可成功启动客户端。启动后出现如图提示即为启动成功。
-
-```
- _____ _________ ______ ______
-|_ _| | _ _ ||_ _ `.|_ _ \
- | | .--.|_/ | | \_| | | `. \ | |_) |
- | | / .'`\ \ | | | | | | | __'.
- _| |_| \__. | _| |_ _| |_.' /_| |__) |
-|_____|'.__.' |_____| |______.'|_______/ version <version>
-
-Successfully login at 127.0.0.1:6667
-```
-输入`quit`或`exit`可退出 cli 结束本次会话,cli 输出`quit normally`表示退出成功。
-
-### Cli 运行参数
-
-|参数名|参数类型|是否为必需参数| 说明| 例子 |
-|:---|:---|:---|:---|:---|
-|-disableISO8601 |没有参数 | 否 |如果设置了这个参数,IoTDB 将以数字的形式打印时间戳 (timestamp)。|-disableISO8601|
-|-h <`host`> |string 类型,不需要引号|是|IoTDB 客户端连接 IoTDB 服务器的 IP 地址。|-h 10.129.187.21|
-|-help|没有参数|否|打印 IoTDB 的帮助信息|-help|
-|-p <`rpcPort`>|int 类型|是|IoTDB 连接服务器的端口号,IoTDB 默认运行在 6667 端口。|-p 6667|
-|-pw <`password`>|string 类型,不需要引号|否|IoTDB 连接服务器所使用的密码。如果没有输入密码 IoTDB 会在 Cli 端提示输入密码。|-pw root|
-|-u <`username`>|string 类型,不需要引号|是|IoTDB 连接服务器锁使用的用户名。|-u root|
-|-maxPRC <`maxPrintRowCount`>|int 类型|否|设置 IoTDB 返回客户端命令行中所显示的最大行数。|-maxPRC 10|
-|-e <`execute`> |string 类型|否|在不进入客户端输入模式的情况下,批量操作 IoTDB|-e "show databases"|
-|-c | 空 | 否 | 如果服务器设置了 `rpc_thrift_compression_enable=true`, 则 CLI 必须使用 `-c` | -c |
-
-下面展示一条客户端命令,功能是连接 IP 为 10.129.187.21 的主机,端口为 6667 ,用户名为 root,密码为 root,以数字的形式打印时间戳,IoTDB 命令行显示的最大行数为 10。
-
-Linux 系统与 MacOS 系统启动命令如下:
-
-```shell
-Shell > bash sbin/start-cli.sh -h 10.129.187.21 -p 6667 -u root -pw root -disableISO8601 -maxPRC 10
-```
-Windows 系统启动命令如下:
-
-```shell
-Shell > sbin\start-cli.bat -h 10.129.187.21 -p 6667 -u root -pw root -disableISO8601 -maxPRC 10
-```
-
-### CLI 特殊命令
-下面列举了一些CLI的特殊命令。
-
-| 命令 | 描述 / 例子 |
-|:---|:---|
-| `set time_display_type=xxx` | 例如: long, default, ISO8601, yyyy-MM-dd HH:mm:ss |
-| `show time_display_type` | 显示时间显示方式 |
-| `set time_zone=xxx` | 例如: +08:00, Asia/Shanghai |
-| `show time_zone` | 显示CLI的时区 |
-| `set fetch_size=xxx` | 设置从服务器查询数据时的读取条数 |
-| `show fetch_size` | 显示读取条数的大小 |
-| `set max_display_num=xxx` | 设置 CLI 一次展示的最大数据条数, 设置为-1表示无限制 |
-| `help` | 获取CLI特殊命令的提示 |
-| `exit/quit` | 退出CLI |
-
-### 使用 OpenID 作为用户名认证登录
-
-OpenID Connect (OIDC) 使用 keycloack 作为 OIDC 服务权限认证服务。
-
-#### 配置
-配置位于 iotdb-system.properties,设定 authorizer_provider_class 为 org.apache.iotdb.commons.auth.authorizer.OpenIdAuthorizer 则开启了 openID 服务,默认情况下值为 org.apache.iotdb.commons.auth.authorizer.LocalFileAuthorizer 表示没有开启 openID 服务。
-
-```
-authorizer_provider_class=org.apache.iotdb.commons.auth.authorizer.OpenIdAuthorizer
-```
-如果开启了 openID 服务则 openID_url 为必填项,openID_url 值为 http://ip:port/realms/{realmsName}
-
-```
-openID_url=http://127.0.0.1:8080/realms/iotdb/
-```
-####keycloack 配置
-
-1、下载 keycloack 程序(此教程为21.1.0版本),在 keycloack/bin 中启动 keycloack
-
-```shell
-Shell > cd bin
-Shell > ./kc.sh start-dev
-```
-2、使用 https://ip:port 登陆 keycloack, 首次登陆需要创建用户
-
-
-
-3、点击 Administration Console 进入管理端
-
-
-
-4、在左侧的 Master 菜单点击 Create Realm, 输入 Realm Name 创建一个新的 Realm
-
-
-
-
-
-5、点击左侧菜单 Clients,创建 client
-
-
-
-6、点击左侧菜单 User,创建 user
-
-
-
-7、点击新创建的用户 id,点击 Credentials 导航输入密码和关闭 Temporary 选项,至此 keyclork 配置完成
-
-
-
-8、创建角色,点击左侧菜单的 Roles然后点击Create Role 按钮添加角色
-
-
-
-9、在Role Name 中输入`iotdb_admin`,点击save 按钮。提示:这里的`iotdb_admin`不能为其他名称否则即使登陆成功后也将无权限使用iotdb的查询、插入、创建 database、添加用户、角色等功能
-
-
-
-10、点击左侧的User 菜单然后点击用户列表中的用户为该用户添加我们刚创建的`iotdb_admin`角色
-
-
-
-11、选择Role Mappings ,在Assign role选择`iotdb_admin`增加角色
-
-
-
-
-
-提示:如果用户角色有调整需要重新生成token并且重新登陆iotdb才会生效
-
-以上步骤提供了一种 keycloak 登陆 iotdb 方式,更多方式请参考 keycloak 配置
-
-若对应的 IoTDB 服务器开启了使用 OpenID Connect (OIDC) 作为权限认证服务,那么就不再需要使用用户名密码进行登录。
-替而代之的是使用 Token,以及空密码。
-此时,登录命令如下:
-
-```shell
-Shell > bash sbin/start-cli.sh -h 10.129.187.21 -p 6667 -u {my-access-token} -pw ""
-```
-
-其中,需要将{my-access-token} (注意,包括{})替换成你的 token,即 access_token 对应的值。密码为空需要再次确认。
-
-
-
-如何获取 token 取决于你的 OIDC 设置。 最简单的一种情况是使用`password-grant`。例如,假设你在用 keycloack 作为你的 OIDC 服务,
-并且你在 keycloack 中有一个被定义成 public 的`iotdb`客户的 realm,那么你可以使用如下`curl`命令获得 token。
-(注意例子中的{}和里面的内容需要替换成具体的服务器地址和 realm 名字):
-```shell
-curl -X POST "http://{your-keycloack-server}/realms/{your-realm}/protocol/openid-connect/token" \ -H "Content-Type: application/x-www-form-urlencoded" \
- -d "username={username}" \
- -d "password={password}" \
- -d 'grant_type=password' \
- -d "client_id=iotdb-client"
-```
-
-示例结果如下:
-
-```json
-{"access_token":"eyJhbGciOiJSUzI1NiIsInR5cCIgOiAiSldUIiwia2lkIiA6ICJxMS1XbTBvelE1TzBtUUg4LVNKYXAyWmNONE1tdWNXd25RV0tZeFpKNG93In0.eyJleHAiOjE1OTAzOTgwNzEsImlhdCI6MTU5MDM5Nzc3MSwianRpIjoiNjA0ZmYxMDctN2NiNy00NTRmLWIwYmQtY2M2ZDQwMjFiNGU4IiwiaXNzIjoiaHR0cDovL2F1dGguZGVtby5wcmFnbWF0aWNpbmR1c3RyaWVzLmRlL2F1dGgvcmVhbG1zL0lvVERCIiwiYXVkIjoiYWNjb3VudCIsInN1YiI6ImJhMzJlNDcxLWM3NzItNGIzMy04ZGE2LTZmZThhY2RhMDA3MyIsInR5cCI6IkJlYXJlciIsImF6cCI6ImlvdGRiIiwic2Vzc2lvbl9zdGF0ZSI6IjA2MGQyODYyLTE0ZWQtNDJmZS1 [...]
-```
-
-### Cli 的批量操作
-当您想要通过脚本的方式通过 Cli / Shell 对 IoTDB 进行批量操作时,可以使用-e 参数。通过使用该参数,您可以在不进入客户端输入模式的情况下操作 IoTDB。
-
-为了避免 SQL 语句和其他参数混淆,现在只支持-e 参数作为最后的参数使用。
-
-针对 cli/Shell 工具的-e 参数用法如下:
-
-Linux 系统与 MacOS 指令:
-
-```shell
-Shell > bash sbin/start-cli.sh -h {host} -p {rpcPort} -u {user} -pw {password} -e {sql for iotdb}
-```
-
-Windows 系统指令
-```shell
-Shell > sbin\start-cli.bat -h {host} -p {rpcPort} -u {user} -pw {password} -e {sql for iotdb}
-```
-
-在 Windows 环境下,-e 参数的 SQL 语句需要使用` `` `对于`" "`进行替换
-
-为了更好的解释-e 参数的使用,可以参考下面在 Linux 上执行的例子。
-
-假设用户希望对一个新启动的 IoTDB 进行如下操作:
-
-1. 创建名为 root.demo 的 database
-
-2. 创建名为 root.demo.s1 的时间序列
-
-3. 向创建的时间序列中插入三个数据点
-
-4. 查询验证数据是否插入成功
-
-那么通过使用 cli/Shell 工具的 -e 参数,可以采用如下的脚本:
-
-```shell
-# !/bin/bash
-
-host=127.0.0.1
-rpcPort=6667
-user=root
-pass=root
-
-bash ./sbin/start-cli.sh -h ${host} -p ${rpcPort} -u ${user} -pw ${pass} -e "CREATE DATABASE root.demo"
-bash ./sbin/start-cli.sh -h ${host} -p ${rpcPort} -u ${user} -pw ${pass} -e "create timeseries root.demo.s1 WITH DATATYPE=INT32, ENCODING=RLE"
-bash ./sbin/start-cli.sh -h ${host} -p ${rpcPort} -u ${user} -pw ${pass} -e "insert into root.demo(timestamp,s1) values(1,10)"
-bash ./sbin/start-cli.sh -h ${host} -p ${rpcPort} -u ${user} -pw ${pass} -e "insert into root.demo(timestamp,s1) values(2,11)"
-bash ./sbin/start-cli.sh -h ${host} -p ${rpcPort} -u ${user} -pw ${pass} -e "insert into root.demo(timestamp,s1) values(3,12)"
-bash ./sbin/start-cli.sh -h ${host} -p ${rpcPort} -u ${user} -pw ${pass} -e "select s1 from root.demo"
-```
-
-打印出来的结果显示如下,通过这种方式进行的操作与客户端的输入模式以及通过 JDBC 进行操作结果是一致的。
-
-```shell
- Shell > bash ./shell.sh
-+-----------------------------+------------+
-| Time|root.demo.s1|
-+-----------------------------+------------+
-|1970-01-01T08:00:00.001+08:00| 10|
-|1970-01-01T08:00:00.002+08:00| 11|
-|1970-01-01T08:00:00.003+08:00| 12|
-+-----------------------------+------------+
-Total line number = 3
-It costs 0.267s
-```
-
-需要特别注意的是,在脚本中使用 -e 参数时要对特殊字符进行转义。
-
+-->
\ No newline at end of file
diff --git a/src/zh/UserGuide/dev-1.3/Tools-System/CLI.md b/src/zh/UserGuide/V1.3.x/Tools-System/CLI_apache.md
similarity index 99%
copy from src/zh/UserGuide/dev-1.3/Tools-System/CLI.md
copy to src/zh/UserGuide/V1.3.x/Tools-System/CLI_apache.md
index aaff8093..4e7125f5 100644
--- a/src/zh/UserGuide/dev-1.3/Tools-System/CLI.md
+++ b/src/zh/UserGuide/V1.3.x/Tools-System/CLI_apache.md
@@ -122,7 +122,7 @@ authorizer_provider_class=org.apache.iotdb.commons.auth.authorizer.OpenIdAuthori
```
openID_url=http://127.0.0.1:8080/realms/iotdb/
```
-####keycloack 配置
+#### keycloack 配置
1、下载 keycloack 程序(此教程为21.1.0版本),在 keycloack/bin 中启动 keycloack
diff --git a/src/zh/UserGuide/dev-1.3/Tools-System/CLI.md b/src/zh/UserGuide/V1.3.x/Tools-System/CLI_timecho.md
similarity index 96%
copy from src/zh/UserGuide/dev-1.3/Tools-System/CLI.md
copy to src/zh/UserGuide/V1.3.x/Tools-System/CLI_timecho.md
index aaff8093..e8fc508b 100644
--- a/src/zh/UserGuide/dev-1.3/Tools-System/CLI.md
+++ b/src/zh/UserGuide/V1.3.x/Tools-System/CLI_timecho.md
@@ -24,20 +24,7 @@
IOTDB 为用户提供 cli/Shell 工具用于启动客户端和服务端程序。下面介绍每个 cli/Shell 工具的运行方式和相关参数。
> \$IOTDB\_HOME 表示 IoTDB 的安装目录所在路径。
-## 安装
-如果使用源码版,可以在 iotdb 的根目录下执行
-
-```shell
-> mvn clean package -pl cli -am -DskipTests
-```
-
-在生成完毕之后,IoTDB 的 Cli 工具位于文件夹"cli/target/iotdb-cli-{project.version}"中。
-
-如果你下载的是二进制版,那么 Cli 可以在 sbin 文件夹下直接找到。
-
-## 运行
-
-### Cli 运行方式
+## Cli 运行方式
安装后的 IoTDB 中有一个默认用户:`root`,默认密码为`root`。用户可以使用该用户尝试运行 IoTDB 客户端以测试服务器是否正常启动。客户端启动脚本为$IOTDB_HOME/sbin 文件夹下的`start-cli`脚本。启动脚本时需要指定运行 IP 和 RPC PORT。以下为服务器在本机启动,且用户未更改运行端口号的示例,默认端口为 6667。若用户尝试连接远程服务器或更改了服务器运行的端口号,请在-h 和-p 项处使用服务器的 IP 和 RPC PORT。<br>
用户也可以在启动脚本的最前方设置自己的环境变量,如 JAVA_HOME 等 (对于 linux 用户,脚本路径为:"/sbin/start-cli.sh"; 对于 windows 用户,脚本路径为:"/sbin/start-cli.bat")
@@ -65,7 +52,7 @@ Successfully login at 127.0.0.1:6667
```
输入`quit`或`exit`可退出 cli 结束本次会话,cli 输出`quit normally`表示退出成功。
-### Cli 运行参数
+## Cli 运行参数
|参数名|参数类型|是否为必需参数| 说明| 例子 |
|:---|:---|:---|:---|:---|
@@ -92,7 +79,7 @@ Windows 系统启动命令如下:
Shell > sbin\start-cli.bat -h 10.129.187.21 -p 6667 -u root -pw root -disableISO8601 -maxPRC 10
```
-### CLI 特殊命令
+## CLI 特殊命令
下面列举了一些CLI的特殊命令。
| 命令 | 描述 / 例子 |
@@ -107,11 +94,11 @@ Shell > sbin\start-cli.bat -h 10.129.187.21 -p 6667 -u root -pw root -disableISO
| `help` | 获取CLI特殊命令的提示 |
| `exit/quit` | 退出CLI |
-### 使用 OpenID 作为用户名认证登录
+## 使用 OpenID 作为用户名认证登录
OpenID Connect (OIDC) 使用 keycloack 作为 OIDC 服务权限认证服务。
-#### 配置
+### 配置
配置位于 iotdb-system.properties,设定 authorizer_provider_class 为 org.apache.iotdb.commons.auth.authorizer.OpenIdAuthorizer 则开启了 openID 服务,默认情况下值为 org.apache.iotdb.commons.auth.authorizer.LocalFileAuthorizer 表示没有开启 openID 服务。
```
@@ -122,7 +109,7 @@ authorizer_provider_class=org.apache.iotdb.commons.auth.authorizer.OpenIdAuthori
```
openID_url=http://127.0.0.1:8080/realms/iotdb/
```
-####keycloack 配置
+### keycloack 配置
1、下载 keycloack 程序(此教程为21.1.0版本),在 keycloack/bin 中启动 keycloack
@@ -207,7 +194,7 @@ curl -X POST "http://{your-keycloack-server}/realms/{your-realm}/protocol/openid
{"access_token":"eyJhbGciOiJSUzI1NiIsInR5cCIgOiAiSldUIiwia2lkIiA6ICJxMS1XbTBvelE1TzBtUUg4LVNKYXAyWmNONE1tdWNXd25RV0tZeFpKNG93In0.eyJleHAiOjE1OTAzOTgwNzEsImlhdCI6MTU5MDM5Nzc3MSwianRpIjoiNjA0ZmYxMDctN2NiNy00NTRmLWIwYmQtY2M2ZDQwMjFiNGU4IiwiaXNzIjoiaHR0cDovL2F1dGguZGVtby5wcmFnbWF0aWNpbmR1c3RyaWVzLmRlL2F1dGgvcmVhbG1zL0lvVERCIiwiYXVkIjoiYWNjb3VudCIsInN1YiI6ImJhMzJlNDcxLWM3NzItNGIzMy04ZGE2LTZmZThhY2RhMDA3MyIsInR5cCI6IkJlYXJlciIsImF6cCI6ImlvdGRiIiwic2Vzc2lvbl9zdGF0ZSI6IjA2MGQyODYyLTE0ZWQtNDJmZS1 [...]
```
-### Cli 的批量操作
+## Cli 的批量操作
当您想要通过脚本的方式通过 Cli / Shell 对 IoTDB 进行批量操作时,可以使用-e 参数。通过使用该参数,您可以在不进入客户端输入模式的情况下操作 IoTDB。
为了避免 SQL 语句和其他参数混淆,现在只支持-e 参数作为最后的参数使用。
diff --git a/src/zh/UserGuide/dev-1.3/Tools-System/CLI.md b/src/zh/UserGuide/dev-1.3/Tools-System/CLI.md
index aaff8093..03580faf 100644
--- a/src/zh/UserGuide/dev-1.3/Tools-System/CLI.md
+++ b/src/zh/UserGuide/dev-1.3/Tools-System/CLI.md
@@ -1,3 +1,6 @@
+---
+redirectTo: CLI_apache.html
+---
<!--
Licensed to the Apache Software Foundation (ASF) under one
@@ -17,260 +20,4 @@
specific language governing permissions and limitations
under the License.
--->
-
-# SQL 命令行终端 (CLI)
-
-IOTDB 为用户提供 cli/Shell 工具用于启动客户端和服务端程序。下面介绍每个 cli/Shell 工具的运行方式和相关参数。
-> \$IOTDB\_HOME 表示 IoTDB 的安装目录所在路径。
-
-## 安装
-如果使用源码版,可以在 iotdb 的根目录下执行
-
-```shell
-> mvn clean package -pl cli -am -DskipTests
-```
-
-在生成完毕之后,IoTDB 的 Cli 工具位于文件夹"cli/target/iotdb-cli-{project.version}"中。
-
-如果你下载的是二进制版,那么 Cli 可以在 sbin 文件夹下直接找到。
-
-## 运行
-
-### Cli 运行方式
-安装后的 IoTDB 中有一个默认用户:`root`,默认密码为`root`。用户可以使用该用户尝试运行 IoTDB 客户端以测试服务器是否正常启动。客户端启动脚本为$IOTDB_HOME/sbin 文件夹下的`start-cli`脚本。启动脚本时需要指定运行 IP 和 RPC PORT。以下为服务器在本机启动,且用户未更改运行端口号的示例,默认端口为 6667。若用户尝试连接远程服务器或更改了服务器运行的端口号,请在-h 和-p 项处使用服务器的 IP 和 RPC PORT。<br>
-用户也可以在启动脚本的最前方设置自己的环境变量,如 JAVA_HOME 等 (对于 linux 用户,脚本路径为:"/sbin/start-cli.sh"; 对于 windows 用户,脚本路径为:"/sbin/start-cli.bat")
-
-Linux 系统与 MacOS 系统启动命令如下:
-
-```shell
-Shell > bash sbin/start-cli.sh -h 127.0.0.1 -p 6667 -u root -pw root
-```
-Windows 系统启动命令如下:
-
-```shell
-Shell > sbin\start-cli.bat -h 127.0.0.1 -p 6667 -u root -pw root
-```
-回车后即可成功启动客户端。启动后出现如图提示即为启动成功。
-
-```
- _____ _________ ______ ______
-|_ _| | _ _ ||_ _ `.|_ _ \
- | | .--.|_/ | | \_| | | `. \ | |_) |
- | | / .'`\ \ | | | | | | | __'.
- _| |_| \__. | _| |_ _| |_.' /_| |__) |
-|_____|'.__.' |_____| |______.'|_______/ version <version>
-
-Successfully login at 127.0.0.1:6667
-```
-输入`quit`或`exit`可退出 cli 结束本次会话,cli 输出`quit normally`表示退出成功。
-
-### Cli 运行参数
-
-|参数名|参数类型|是否为必需参数| 说明| 例子 |
-|:---|:---|:---|:---|:---|
-|-disableISO8601 |没有参数 | 否 |如果设置了这个参数,IoTDB 将以数字的形式打印时间戳 (timestamp)。|-disableISO8601|
-|-h <`host`> |string 类型,不需要引号|是|IoTDB 客户端连接 IoTDB 服务器的 IP 地址。|-h 10.129.187.21|
-|-help|没有参数|否|打印 IoTDB 的帮助信息|-help|
-|-p <`rpcPort`>|int 类型|是|IoTDB 连接服务器的端口号,IoTDB 默认运行在 6667 端口。|-p 6667|
-|-pw <`password`>|string 类型,不需要引号|否|IoTDB 连接服务器所使用的密码。如果没有输入密码 IoTDB 会在 Cli 端提示输入密码。|-pw root|
-|-u <`username`>|string 类型,不需要引号|是|IoTDB 连接服务器锁使用的用户名。|-u root|
-|-maxPRC <`maxPrintRowCount`>|int 类型|否|设置 IoTDB 返回客户端命令行中所显示的最大行数。|-maxPRC 10|
-|-e <`execute`> |string 类型|否|在不进入客户端输入模式的情况下,批量操作 IoTDB|-e "show databases"|
-|-c | 空 | 否 | 如果服务器设置了 `rpc_thrift_compression_enable=true`, 则 CLI 必须使用 `-c` | -c |
-
-下面展示一条客户端命令,功能是连接 IP 为 10.129.187.21 的主机,端口为 6667 ,用户名为 root,密码为 root,以数字的形式打印时间戳,IoTDB 命令行显示的最大行数为 10。
-
-Linux 系统与 MacOS 系统启动命令如下:
-
-```shell
-Shell > bash sbin/start-cli.sh -h 10.129.187.21 -p 6667 -u root -pw root -disableISO8601 -maxPRC 10
-```
-Windows 系统启动命令如下:
-
-```shell
-Shell > sbin\start-cli.bat -h 10.129.187.21 -p 6667 -u root -pw root -disableISO8601 -maxPRC 10
-```
-
-### CLI 特殊命令
-下面列举了一些CLI的特殊命令。
-
-| 命令 | 描述 / 例子 |
-|:---|:---|
-| `set time_display_type=xxx` | 例如: long, default, ISO8601, yyyy-MM-dd HH:mm:ss |
-| `show time_display_type` | 显示时间显示方式 |
-| `set time_zone=xxx` | 例如: +08:00, Asia/Shanghai |
-| `show time_zone` | 显示CLI的时区 |
-| `set fetch_size=xxx` | 设置从服务器查询数据时的读取条数 |
-| `show fetch_size` | 显示读取条数的大小 |
-| `set max_display_num=xxx` | 设置 CLI 一次展示的最大数据条数, 设置为-1表示无限制 |
-| `help` | 获取CLI特殊命令的提示 |
-| `exit/quit` | 退出CLI |
-
-### 使用 OpenID 作为用户名认证登录
-
-OpenID Connect (OIDC) 使用 keycloack 作为 OIDC 服务权限认证服务。
-
-#### 配置
-配置位于 iotdb-system.properties,设定 authorizer_provider_class 为 org.apache.iotdb.commons.auth.authorizer.OpenIdAuthorizer 则开启了 openID 服务,默认情况下值为 org.apache.iotdb.commons.auth.authorizer.LocalFileAuthorizer 表示没有开启 openID 服务。
-
-```
-authorizer_provider_class=org.apache.iotdb.commons.auth.authorizer.OpenIdAuthorizer
-```
-如果开启了 openID 服务则 openID_url 为必填项,openID_url 值为 http://ip:port/realms/{realmsName}
-
-```
-openID_url=http://127.0.0.1:8080/realms/iotdb/
-```
-####keycloack 配置
-
-1、下载 keycloack 程序(此教程为21.1.0版本),在 keycloack/bin 中启动 keycloack
-
-```shell
-Shell > cd bin
-Shell > ./kc.sh start-dev
-```
-2、使用 https://ip:port 登陆 keycloack, 首次登陆需要创建用户
-
-
-
-3、点击 Administration Console 进入管理端
-
-
-
-4、在左侧的 Master 菜单点击 Create Realm, 输入 Realm Name 创建一个新的 Realm
-
-
-
-
-
-5、点击左侧菜单 Clients,创建 client
-
-
-
-6、点击左侧菜单 User,创建 user
-
-
-
-7、点击新创建的用户 id,点击 Credentials 导航输入密码和关闭 Temporary 选项,至此 keyclork 配置完成
-
-
-
-8、创建角色,点击左侧菜单的 Roles然后点击Create Role 按钮添加角色
-
-
-
-9、在Role Name 中输入`iotdb_admin`,点击save 按钮。提示:这里的`iotdb_admin`不能为其他名称否则即使登陆成功后也将无权限使用iotdb的查询、插入、创建 database、添加用户、角色等功能
-
-
-
-10、点击左侧的User 菜单然后点击用户列表中的用户为该用户添加我们刚创建的`iotdb_admin`角色
-
-
-
-11、选择Role Mappings ,在Assign role选择`iotdb_admin`增加角色
-
-
-
-
-
-提示:如果用户角色有调整需要重新生成token并且重新登陆iotdb才会生效
-
-以上步骤提供了一种 keycloak 登陆 iotdb 方式,更多方式请参考 keycloak 配置
-
-若对应的 IoTDB 服务器开启了使用 OpenID Connect (OIDC) 作为权限认证服务,那么就不再需要使用用户名密码进行登录。
-替而代之的是使用 Token,以及空密码。
-此时,登录命令如下:
-
-```shell
-Shell > bash sbin/start-cli.sh -h 10.129.187.21 -p 6667 -u {my-access-token} -pw ""
-```
-
-其中,需要将{my-access-token} (注意,包括{})替换成你的 token,即 access_token 对应的值。密码为空需要再次确认。
-
-
-
-如何获取 token 取决于你的 OIDC 设置。 最简单的一种情况是使用`password-grant`。例如,假设你在用 keycloack 作为你的 OIDC 服务,
-并且你在 keycloack 中有一个被定义成 public 的`iotdb`客户的 realm,那么你可以使用如下`curl`命令获得 token。
-(注意例子中的{}和里面的内容需要替换成具体的服务器地址和 realm 名字):
-```shell
-curl -X POST "http://{your-keycloack-server}/realms/{your-realm}/protocol/openid-connect/token" \ -H "Content-Type: application/x-www-form-urlencoded" \
- -d "username={username}" \
- -d "password={password}" \
- -d 'grant_type=password' \
- -d "client_id=iotdb-client"
-```
-
-示例结果如下:
-
-```json
-{"access_token":"eyJhbGciOiJSUzI1NiIsInR5cCIgOiAiSldUIiwia2lkIiA6ICJxMS1XbTBvelE1TzBtUUg4LVNKYXAyWmNONE1tdWNXd25RV0tZeFpKNG93In0.eyJleHAiOjE1OTAzOTgwNzEsImlhdCI6MTU5MDM5Nzc3MSwianRpIjoiNjA0ZmYxMDctN2NiNy00NTRmLWIwYmQtY2M2ZDQwMjFiNGU4IiwiaXNzIjoiaHR0cDovL2F1dGguZGVtby5wcmFnbWF0aWNpbmR1c3RyaWVzLmRlL2F1dGgvcmVhbG1zL0lvVERCIiwiYXVkIjoiYWNjb3VudCIsInN1YiI6ImJhMzJlNDcxLWM3NzItNGIzMy04ZGE2LTZmZThhY2RhMDA3MyIsInR5cCI6IkJlYXJlciIsImF6cCI6ImlvdGRiIiwic2Vzc2lvbl9zdGF0ZSI6IjA2MGQyODYyLTE0ZWQtNDJmZS1 [...]
-```
-
-### Cli 的批量操作
-当您想要通过脚本的方式通过 Cli / Shell 对 IoTDB 进行批量操作时,可以使用-e 参数。通过使用该参数,您可以在不进入客户端输入模式的情况下操作 IoTDB。
-
-为了避免 SQL 语句和其他参数混淆,现在只支持-e 参数作为最后的参数使用。
-
-针对 cli/Shell 工具的-e 参数用法如下:
-
-Linux 系统与 MacOS 指令:
-
-```shell
-Shell > bash sbin/start-cli.sh -h {host} -p {rpcPort} -u {user} -pw {password} -e {sql for iotdb}
-```
-
-Windows 系统指令
-```shell
-Shell > sbin\start-cli.bat -h {host} -p {rpcPort} -u {user} -pw {password} -e {sql for iotdb}
-```
-
-在 Windows 环境下,-e 参数的 SQL 语句需要使用` `` `对于`" "`进行替换
-
-为了更好的解释-e 参数的使用,可以参考下面在 Linux 上执行的例子。
-
-假设用户希望对一个新启动的 IoTDB 进行如下操作:
-
-1. 创建名为 root.demo 的 database
-
-2. 创建名为 root.demo.s1 的时间序列
-
-3. 向创建的时间序列中插入三个数据点
-
-4. 查询验证数据是否插入成功
-
-那么通过使用 cli/Shell 工具的 -e 参数,可以采用如下的脚本:
-
-```shell
-# !/bin/bash
-
-host=127.0.0.1
-rpcPort=6667
-user=root
-pass=root
-
-bash ./sbin/start-cli.sh -h ${host} -p ${rpcPort} -u ${user} -pw ${pass} -e "CREATE DATABASE root.demo"
-bash ./sbin/start-cli.sh -h ${host} -p ${rpcPort} -u ${user} -pw ${pass} -e "create timeseries root.demo.s1 WITH DATATYPE=INT32, ENCODING=RLE"
-bash ./sbin/start-cli.sh -h ${host} -p ${rpcPort} -u ${user} -pw ${pass} -e "insert into root.demo(timestamp,s1) values(1,10)"
-bash ./sbin/start-cli.sh -h ${host} -p ${rpcPort} -u ${user} -pw ${pass} -e "insert into root.demo(timestamp,s1) values(2,11)"
-bash ./sbin/start-cli.sh -h ${host} -p ${rpcPort} -u ${user} -pw ${pass} -e "insert into root.demo(timestamp,s1) values(3,12)"
-bash ./sbin/start-cli.sh -h ${host} -p ${rpcPort} -u ${user} -pw ${pass} -e "select s1 from root.demo"
-```
-
-打印出来的结果显示如下,通过这种方式进行的操作与客户端的输入模式以及通过 JDBC 进行操作结果是一致的。
-
-```shell
- Shell > bash ./shell.sh
-+-----------------------------+------------+
-| Time|root.demo.s1|
-+-----------------------------+------------+
-|1970-01-01T08:00:00.001+08:00| 10|
-|1970-01-01T08:00:00.002+08:00| 11|
-|1970-01-01T08:00:00.003+08:00| 12|
-+-----------------------------+------------+
-Total line number = 3
-It costs 0.267s
-```
-
-需要特别注意的是,在脚本中使用 -e 参数时要对特殊字符进行转义。
-
+-->
\ No newline at end of file
diff --git a/src/zh/UserGuide/dev-1.3/Tools-System/CLI.md b/src/zh/UserGuide/dev-1.3/Tools-System/CLI_apache.md
similarity index 99%
copy from src/zh/UserGuide/dev-1.3/Tools-System/CLI.md
copy to src/zh/UserGuide/dev-1.3/Tools-System/CLI_apache.md
index aaff8093..4e7125f5 100644
--- a/src/zh/UserGuide/dev-1.3/Tools-System/CLI.md
+++ b/src/zh/UserGuide/dev-1.3/Tools-System/CLI_apache.md
@@ -122,7 +122,7 @@ authorizer_provider_class=org.apache.iotdb.commons.auth.authorizer.OpenIdAuthori
```
openID_url=http://127.0.0.1:8080/realms/iotdb/
```
-####keycloack 配置
+#### keycloack 配置
1、下载 keycloack 程序(此教程为21.1.0版本),在 keycloack/bin 中启动 keycloack
diff --git a/src/zh/UserGuide/dev-1.3/Tools-System/CLI.md b/src/zh/UserGuide/dev-1.3/Tools-System/CLI_timecho.md
similarity index 96%
copy from src/zh/UserGuide/dev-1.3/Tools-System/CLI.md
copy to src/zh/UserGuide/dev-1.3/Tools-System/CLI_timecho.md
index aaff8093..e8fc508b 100644
--- a/src/zh/UserGuide/dev-1.3/Tools-System/CLI.md
+++ b/src/zh/UserGuide/dev-1.3/Tools-System/CLI_timecho.md
@@ -24,20 +24,7 @@
IOTDB 为用户提供 cli/Shell 工具用于启动客户端和服务端程序。下面介绍每个 cli/Shell 工具的运行方式和相关参数。
> \$IOTDB\_HOME 表示 IoTDB 的安装目录所在路径。
-## 安装
-如果使用源码版,可以在 iotdb 的根目录下执行
-
-```shell
-> mvn clean package -pl cli -am -DskipTests
-```
-
-在生成完毕之后,IoTDB 的 Cli 工具位于文件夹"cli/target/iotdb-cli-{project.version}"中。
-
-如果你下载的是二进制版,那么 Cli 可以在 sbin 文件夹下直接找到。
-
-## 运行
-
-### Cli 运行方式
+## Cli 运行方式
安装后的 IoTDB 中有一个默认用户:`root`,默认密码为`root`。用户可以使用该用户尝试运行 IoTDB 客户端以测试服务器是否正常启动。客户端启动脚本为$IOTDB_HOME/sbin 文件夹下的`start-cli`脚本。启动脚本时需要指定运行 IP 和 RPC PORT。以下为服务器在本机启动,且用户未更改运行端口号的示例,默认端口为 6667。若用户尝试连接远程服务器或更改了服务器运行的端口号,请在-h 和-p 项处使用服务器的 IP 和 RPC PORT。<br>
用户也可以在启动脚本的最前方设置自己的环境变量,如 JAVA_HOME 等 (对于 linux 用户,脚本路径为:"/sbin/start-cli.sh"; 对于 windows 用户,脚本路径为:"/sbin/start-cli.bat")
@@ -65,7 +52,7 @@ Successfully login at 127.0.0.1:6667
```
输入`quit`或`exit`可退出 cli 结束本次会话,cli 输出`quit normally`表示退出成功。
-### Cli 运行参数
+## Cli 运行参数
|参数名|参数类型|是否为必需参数| 说明| 例子 |
|:---|:---|:---|:---|:---|
@@ -92,7 +79,7 @@ Windows 系统启动命令如下:
Shell > sbin\start-cli.bat -h 10.129.187.21 -p 6667 -u root -pw root -disableISO8601 -maxPRC 10
```
-### CLI 特殊命令
+## CLI 特殊命令
下面列举了一些CLI的特殊命令。
| 命令 | 描述 / 例子 |
@@ -107,11 +94,11 @@ Shell > sbin\start-cli.bat -h 10.129.187.21 -p 6667 -u root -pw root -disableISO
| `help` | 获取CLI特殊命令的提示 |
| `exit/quit` | 退出CLI |
-### 使用 OpenID 作为用户名认证登录
+## 使用 OpenID 作为用户名认证登录
OpenID Connect (OIDC) 使用 keycloack 作为 OIDC 服务权限认证服务。
-#### 配置
+### 配置
配置位于 iotdb-system.properties,设定 authorizer_provider_class 为 org.apache.iotdb.commons.auth.authorizer.OpenIdAuthorizer 则开启了 openID 服务,默认情况下值为 org.apache.iotdb.commons.auth.authorizer.LocalFileAuthorizer 表示没有开启 openID 服务。
```
@@ -122,7 +109,7 @@ authorizer_provider_class=org.apache.iotdb.commons.auth.authorizer.OpenIdAuthori
```
openID_url=http://127.0.0.1:8080/realms/iotdb/
```
-####keycloack 配置
+### keycloack 配置
1、下载 keycloack 程序(此教程为21.1.0版本),在 keycloack/bin 中启动 keycloack
@@ -207,7 +194,7 @@ curl -X POST "http://{your-keycloack-server}/realms/{your-realm}/protocol/openid
{"access_token":"eyJhbGciOiJSUzI1NiIsInR5cCIgOiAiSldUIiwia2lkIiA6ICJxMS1XbTBvelE1TzBtUUg4LVNKYXAyWmNONE1tdWNXd25RV0tZeFpKNG93In0.eyJleHAiOjE1OTAzOTgwNzEsImlhdCI6MTU5MDM5Nzc3MSwianRpIjoiNjA0ZmYxMDctN2NiNy00NTRmLWIwYmQtY2M2ZDQwMjFiNGU4IiwiaXNzIjoiaHR0cDovL2F1dGguZGVtby5wcmFnbWF0aWNpbmR1c3RyaWVzLmRlL2F1dGgvcmVhbG1zL0lvVERCIiwiYXVkIjoiYWNjb3VudCIsInN1YiI6ImJhMzJlNDcxLWM3NzItNGIzMy04ZGE2LTZmZThhY2RhMDA3MyIsInR5cCI6IkJlYXJlciIsImF6cCI6ImlvdGRiIiwic2Vzc2lvbl9zdGF0ZSI6IjA2MGQyODYyLTE0ZWQtNDJmZS1 [...]
```
-### Cli 的批量操作
+## Cli 的批量操作
当您想要通过脚本的方式通过 Cli / Shell 对 IoTDB 进行批量操作时,可以使用-e 参数。通过使用该参数,您可以在不进入客户端输入模式的情况下操作 IoTDB。
为了避免 SQL 语句和其他参数混淆,现在只支持-e 参数作为最后的参数使用。
diff --git a/src/zh/UserGuide/latest/Tools-System/CLI.md b/src/zh/UserGuide/latest/Tools-System/CLI.md
index 23d3470b..03580faf 100644
--- a/src/zh/UserGuide/latest/Tools-System/CLI.md
+++ b/src/zh/UserGuide/latest/Tools-System/CLI.md
@@ -1,3 +1,6 @@
+---
+redirectTo: CLI_apache.html
+---
<!--
Licensed to the Apache Software Foundation (ASF) under one
@@ -17,272 +20,4 @@
specific language governing permissions and limitations
under the License.
--->
-
-# 命令行工具
-
-IOTDB 为用户提供 cli/Shell 工具用于启动客户端和服务端程序。下面介绍每个 cli/Shell 工具的运行方式和相关参数。
-> \$IOTDB\_HOME 表示 IoTDB 的安装目录所在路径。
-
-## 1. 安装
-如果使用源码版,可以在 iotdb 的根目录下执行
-
-```shell
-> mvn clean package -pl cli -am -DskipTests
-```
-
-在生成完毕之后,IoTDB 的 Cli 工具位于文件夹"cli/target/iotdb-cli-{project.version}"中。
-
-如果你下载的是二进制版,那么 Cli 可以在 sbin 文件夹下直接找到。
-
-## 2. 运行
-
-### 2.1 Cli 运行方式
-安装后的 IoTDB 中有一个默认用户:`root`,默认密码为`root`。用户可以使用该用户尝试运行 IoTDB 客户端以测试服务器是否正常启动。客户端启动脚本为$IOTDB_HOME/sbin 文件夹下的`start-cli`脚本。启动脚本时需要指定运行 IP 和 RPC PORT。以下为服务器在本机启动,且用户未更改运行端口号的示例,默认端口为 6667。若用户尝试连接远程服务器或更改了服务器运行的端口号,请在-h 和-p 项处使用服务器的 IP 和 RPC PORT。<br>
-用户也可以在启动脚本的最前方设置自己的环境变量,如 JAVA_HOME 等。
-
-Linux 系统与 MacOS 系统启动命令如下:
-
-```shell
-Shell > bash sbin/start-cli.sh -h 127.0.0.1 -p 6667 -u root -pw root
-```
-Windows 系统启动命令如下:
-
-```shell
-# V2.0.4.x 版本之前
-Shell > sbin\start-cli.bat -h 127.0.0.1 -p 6667 -u root -pw root
-
-# V2.0.4.x 版本及之后
-Shell > sbin\windows\start-cli.bat -h 127.0.0.1 -p 6667 -u root -pw root
-```
-回车后即可成功启动客户端。启动后出现如图提示即为启动成功。
-
-```
- _____ _________ ______ ______
-|_ _| | _ _ ||_ _ `.|_ _ \
- | | .--.|_/ | | \_| | | `. \ | |_) |
- | | / .'`\ \ | | | | | | | __'.
- _| |_| \__. | _| |_ _| |_.' /_| |__) |
-|_____|'.__.' |_____| |______.'|_______/ version <version>
-
-Successfully login at 127.0.0.1:6667
-```
-输入`quit`或`exit`可退出 cli 结束本次会话,cli 输出`quit normally`表示退出成功。
-
-### 2.2 Cli 运行参数
-
-|参数名|参数类型|是否为必需参数| 说明| 例子 |
-|:---|:---|:---|:---|:---|
-|-disableISO8601 |没有参数 | 否 |如果设置了这个参数,IoTDB 将以数字的形式打印时间戳 (timestamp)。|-disableISO8601|
-|-h <`host`> |string 类型,不需要引号|是|IoTDB 客户端连接 IoTDB 服务器的 IP 地址。|-h 10.129.187.21|
-|-help|没有参数|否|打印 IoTDB 的帮助信息|-help|
-|-p <`rpcPort`>|int 类型|是|IoTDB 连接服务器的端口号,IoTDB 默认运行在 6667 端口。|-p 6667|
-|-pw <`password`>|string 类型,不需要引号|否|IoTDB 连接服务器所使用的密码。如果没有输入密码 IoTDB 会在 Cli 端提示输入密码。|-pw root|
-|-u <`username`>|string 类型,不需要引号|是|IoTDB 连接服务器锁使用的用户名。|-u root|
-|-maxPRC <`maxPrintRowCount`>|int 类型|否|设置 IoTDB 返回客户端命令行中所显示的最大行数。|-maxPRC 10|
-|-e <`execute`> |string 类型|否|在不进入客户端输入模式的情况下,批量操作 IoTDB|-e "show databases"|
-|-c | 空 | 否 | 如果服务器设置了 `rpc_thrift_compression_enable=true`, 则 CLI 必须使用 `-c` | -c |
-
-下面展示一条客户端命令,功能是连接 IP 为 10.129.187.21 的主机,端口为 6667 ,用户名为 root,密码为 root,以数字的形式打印时间戳,IoTDB 命令行显示的最大行数为 10。
-
-Linux 系统与 MacOS 系统启动命令如下:
-
-```shell
-Shell > bash sbin/start-cli.sh -h 10.129.187.21 -p 6667 -u root -pw root -disableISO8601 -maxPRC 10
-```
-Windows 系统启动命令如下:
-
-```shell
-# V2.0.4.x 版本之前
-Shell > sbin\start-cli.bat -h 10.129.187.21 -p 6667 -u root -pw root -disableISO8601 -maxPRC 10
-
-# V2.0.4.x 版本及之后
-Shell > sbin\windows\start-cli.bat -h 10.129.187.21 -p 6667 -u root -pw root -disableISO8601 -maxPRC 10
-```
-
-### 2.3 CLI 特殊命令
-下面列举了一些CLI的特殊命令。
-
-| 命令 | 描述 / 例子 |
-|:---|:---|
-| `set time_display_type=xxx` | 例如: long, default, ISO8601, yyyy-MM-dd HH:mm:ss |
-| `show time_display_type` | 显示时间显示方式 |
-| `set time_zone=xxx` | 例如: +08:00, Asia/Shanghai |
-| `show time_zone` | 显示CLI的时区 |
-| `set fetch_size=xxx` | 设置从服务器查询数据时的读取条数 |
-| `show fetch_size` | 显示读取条数的大小 |
-| `set max_display_num=xxx` | 设置 CLI 一次展示的最大数据条数, 设置为-1表示无限制 |
-| `help` | 获取CLI特殊命令的提示 |
-| `exit/quit` | 退出CLI |
-
-### 2.4 使用 OpenID 作为用户名认证登录
-
-OpenID Connect (OIDC) 使用 keycloack 作为 OIDC 服务权限认证服务。
-
-#### 配置
-配置位于 iotdb-system.properties,设定 authorizer_provider_class 为 org.apache.iotdb.commons.auth.authorizer.OpenIdAuthorizer 则开启了 openID 服务,默认情况下值为 org.apache.iotdb.commons.auth.authorizer.LocalFileAuthorizer 表示没有开启 openID 服务。
-
-```
-authorizer_provider_class=org.apache.iotdb.commons.auth.authorizer.OpenIdAuthorizer
-```
-如果开启了 openID 服务则 openID_url 为必填项,openID_url 值为 http://ip:port/realms/{realmsName}
-
-```
-openID_url=http://127.0.0.1:8080/realms/iotdb/
-```
-####keycloack 配置
-
-1、下载 keycloack 程序(此教程为21.1.0版本),在 keycloack/bin 中启动 keycloack
-
-```shell
-Shell > cd bin
-Shell > ./kc.sh start-dev
-```
-2、使用 https://ip:port 登陆 keycloack, 首次登陆需要创建用户
-
-
-
-3、点击 Administration Console 进入管理端
-
-
-
-4、在左侧的 Master 菜单点击 Create Realm, 输入 Realm Name 创建一个新的 Realm
-
-
-
-
-
-5、点击左侧菜单 Clients,创建 client
-
-
-
-6、点击左侧菜单 User,创建 user
-
-
-
-7、点击新创建的用户 id,点击 Credentials 导航输入密码和关闭 Temporary 选项,至此 keyclork 配置完成
-
-
-
-8、创建角色,点击左侧菜单的 Roles然后点击Create Role 按钮添加角色
-
-
-
-9、在Role Name 中输入`iotdb_admin`,点击save 按钮。提示:这里的`iotdb_admin`不能为其他名称否则即使登陆成功后也将无权限使用iotdb的查询、插入、创建 database、添加用户、角色等功能
-
-
-
-10、点击左侧的User 菜单然后点击用户列表中的用户为该用户添加我们刚创建的`iotdb_admin`角色
-
-
-
-11、选择Role Mappings ,在Assign role选择`iotdb_admin`增加角色
-
-
-
-
-
-提示:如果用户角色有调整需要重新生成token并且重新登陆iotdb才会生效
-
-以上步骤提供了一种 keycloak 登陆 iotdb 方式,更多方式请参考 keycloak 配置
-
-若对应的 IoTDB 服务器开启了使用 OpenID Connect (OIDC) 作为权限认证服务,那么就不再需要使用用户名密码进行登录。
-替而代之的是使用 Token,以及空密码。
-此时,登录命令如下:
-
-```shell
-Shell > bash sbin/start-cli.sh -h 10.129.187.21 -p 6667 -u {my-access-token} -pw ""
-```
-
-其中,需要将{my-access-token} (注意,包括{})替换成你的 token,即 access_token 对应的值。密码为空需要再次确认。
-
-
-
-如何获取 token 取决于你的 OIDC 设置。 最简单的一种情况是使用`password-grant`。例如,假设你在用 keycloack 作为你的 OIDC 服务,
-并且你在 keycloack 中有一个被定义成 public 的`iotdb`客户的 realm,那么你可以使用如下`curl`命令获得 token。
-(注意例子中的{}和里面的内容需要替换成具体的服务器地址和 realm 名字):
-```shell
-curl -X POST "http://{your-keycloack-server}/realms/{your-realm}/protocol/openid-connect/token" \ -H "Content-Type: application/x-www-form-urlencoded" \
- -d "username={username}" \
- -d "password={password}" \
- -d 'grant_type=password' \
- -d "client_id=iotdb-client"
-```
-
-示例结果如下:
-
-```json
-{"access_token":"eyJhbGciOiJSUzI1NiIsInR5cCIgOiAiSldUIiwia2lkIiA6ICJxMS1XbTBvelE1TzBtUUg4LVNKYXAyWmNONE1tdWNXd25RV0tZeFpKNG93In0.eyJleHAiOjE1OTAzOTgwNzEsImlhdCI6MTU5MDM5Nzc3MSwianRpIjoiNjA0ZmYxMDctN2NiNy00NTRmLWIwYmQtY2M2ZDQwMjFiNGU4IiwiaXNzIjoiaHR0cDovL2F1dGguZGVtby5wcmFnbWF0aWNpbmR1c3RyaWVzLmRlL2F1dGgvcmVhbG1zL0lvVERCIiwiYXVkIjoiYWNjb3VudCIsInN1YiI6ImJhMzJlNDcxLWM3NzItNGIzMy04ZGE2LTZmZThhY2RhMDA3MyIsInR5cCI6IkJlYXJlciIsImF6cCI6ImlvdGRiIiwic2Vzc2lvbl9zdGF0ZSI6IjA2MGQyODYyLTE0ZWQtNDJmZS1 [...]
-```
-
-### 2.5 Cli 的批量操作
-当您想要通过脚本的方式通过 Cli / Shell 对 IoTDB 进行批量操作时,可以使用-e 参数。通过使用该参数,您可以在不进入客户端输入模式的情况下操作 IoTDB。
-
-为了避免 SQL 语句和其他参数混淆,现在只支持-e 参数作为最后的参数使用。
-
-针对 cli/Shell 工具的-e 参数用法如下:
-
-Linux 系统与 MacOS 指令:
-
-```shell
-Shell > bash sbin/start-cli.sh -h {host} -p {rpcPort} -u {user} -pw {password} -e {sql for iotdb}
-```
-
-Windows 系统指令
-```shell
-# V2.0.4.x 版本之前
-Shell > sbin\start-cli.bat -h {host} -p {rpcPort} -u {user} -pw {password} -e {sql for iotdb}
-
-# V2.0.4.x 版本及之后
-Shell > sbin\windows\start-cli.bat -h {host} -p {rpcPort} -u {user} -pw {password} -e {sql for iotdb}
-```
-
-在 Windows 环境下,-e 参数的 SQL 语句需要使用` `` `对于`" "`进行替换
-
-为了更好的解释-e 参数的使用,可以参考下面在 Linux 上执行的例子。
-
-假设用户希望对一个新启动的 IoTDB 进行如下操作:
-
-1. 创建名为 root.demo 的 database
-
-2. 创建名为 root.demo.s1 的时间序列
-
-3. 向创建的时间序列中插入三个数据点
-
-4. 查询验证数据是否插入成功
-
-那么通过使用 cli/Shell 工具的 -e 参数,可以采用如下的脚本:
-
-```shell
-# !/bin/bash
-
-host=127.0.0.1
-rpcPort=6667
-user=root
-pass=root
-
-bash ./sbin/start-cli.sh -h ${host} -p ${rpcPort} -u ${user} -pw ${pass} -e "CREATE DATABASE root.demo"
-bash ./sbin/start-cli.sh -h ${host} -p ${rpcPort} -u ${user} -pw ${pass} -e "create timeseries root.demo.s1 WITH DATATYPE=INT32, ENCODING=RLE"
-bash ./sbin/start-cli.sh -h ${host} -p ${rpcPort} -u ${user} -pw ${pass} -e "insert into root.demo(timestamp,s1) values(1,10)"
-bash ./sbin/start-cli.sh -h ${host} -p ${rpcPort} -u ${user} -pw ${pass} -e "insert into root.demo(timestamp,s1) values(2,11)"
-bash ./sbin/start-cli.sh -h ${host} -p ${rpcPort} -u ${user} -pw ${pass} -e "insert into root.demo(timestamp,s1) values(3,12)"
-bash ./sbin/start-cli.sh -h ${host} -p ${rpcPort} -u ${user} -pw ${pass} -e "select s1 from root.demo"
-```
-
-打印出来的结果显示如下,通过这种方式进行的操作与客户端的输入模式以及通过 JDBC 进行操作结果是一致的。
-
-```shell
- Shell > bash ./shell.sh
-+-----------------------------+------------+
-| Time|root.demo.s1|
-+-----------------------------+------------+
-|1970-01-01T08:00:00.001+08:00| 10|
-|1970-01-01T08:00:00.002+08:00| 11|
-|1970-01-01T08:00:00.003+08:00| 12|
-+-----------------------------+------------+
-Total line number = 3
-It costs 0.267s
-```
-
-需要特别注意的是,在脚本中使用 -e 参数时要对特殊字符进行转义。
-
+-->
\ No newline at end of file
diff --git a/src/zh/UserGuide/Master/Tree/Tools-System/CLI.md b/src/zh/UserGuide/latest/Tools-System/CLI_apache.md
similarity index 99%
copy from src/zh/UserGuide/Master/Tree/Tools-System/CLI.md
copy to src/zh/UserGuide/latest/Tools-System/CLI_apache.md
index 23d3470b..1adf00af 100644
--- a/src/zh/UserGuide/Master/Tree/Tools-System/CLI.md
+++ b/src/zh/UserGuide/latest/Tools-System/CLI_apache.md
@@ -130,7 +130,7 @@ authorizer_provider_class=org.apache.iotdb.commons.auth.authorizer.OpenIdAuthori
```
openID_url=http://127.0.0.1:8080/realms/iotdb/
```
-####keycloack 配置
+#### keycloack 配置
1、下载 keycloack 程序(此教程为21.1.0版本),在 keycloack/bin 中启动 keycloack
diff --git a/src/zh/UserGuide/Master/Tree/Tools-System/CLI.md b/src/zh/UserGuide/latest/Tools-System/CLI_timecho.md
similarity index 96%
copy from src/zh/UserGuide/Master/Tree/Tools-System/CLI.md
copy to src/zh/UserGuide/latest/Tools-System/CLI_timecho.md
index 23d3470b..c3d9f570 100644
--- a/src/zh/UserGuide/Master/Tree/Tools-System/CLI.md
+++ b/src/zh/UserGuide/latest/Tools-System/CLI_timecho.md
@@ -24,20 +24,7 @@
IOTDB 为用户提供 cli/Shell 工具用于启动客户端和服务端程序。下面介绍每个 cli/Shell 工具的运行方式和相关参数。
> \$IOTDB\_HOME 表示 IoTDB 的安装目录所在路径。
-## 1. 安装
-如果使用源码版,可以在 iotdb 的根目录下执行
-
-```shell
-> mvn clean package -pl cli -am -DskipTests
-```
-
-在生成完毕之后,IoTDB 的 Cli 工具位于文件夹"cli/target/iotdb-cli-{project.version}"中。
-
-如果你下载的是二进制版,那么 Cli 可以在 sbin 文件夹下直接找到。
-
-## 2. 运行
-
-### 2.1 Cli 运行方式
+## 1. Cli 运行方式
安装后的 IoTDB 中有一个默认用户:`root`,默认密码为`root`。用户可以使用该用户尝试运行 IoTDB 客户端以测试服务器是否正常启动。客户端启动脚本为$IOTDB_HOME/sbin 文件夹下的`start-cli`脚本。启动脚本时需要指定运行 IP 和 RPC PORT。以下为服务器在本机启动,且用户未更改运行端口号的示例,默认端口为 6667。若用户尝试连接远程服务器或更改了服务器运行的端口号,请在-h 和-p 项处使用服务器的 IP 和 RPC PORT。<br>
用户也可以在启动脚本的最前方设置自己的环境变量,如 JAVA_HOME 等。
@@ -69,7 +56,7 @@ Successfully login at 127.0.0.1:6667
```
输入`quit`或`exit`可退出 cli 结束本次会话,cli 输出`quit normally`表示退出成功。
-### 2.2 Cli 运行参数
+## 2. Cli 运行参数
|参数名|参数类型|是否为必需参数| 说明| 例子 |
|:---|:---|:---|:---|:---|
@@ -100,7 +87,7 @@ Shell > sbin\start-cli.bat -h 10.129.187.21 -p 6667 -u root -pw root -disableISO
Shell > sbin\windows\start-cli.bat -h 10.129.187.21 -p 6667 -u root -pw root -disableISO8601 -maxPRC 10
```
-### 2.3 CLI 特殊命令
+## 3. CLI 特殊命令
下面列举了一些CLI的特殊命令。
| 命令 | 描述 / 例子 |
@@ -115,11 +102,11 @@ Shell > sbin\windows\start-cli.bat -h 10.129.187.21 -p 6667 -u root -pw root -di
| `help` | 获取CLI特殊命令的提示 |
| `exit/quit` | 退出CLI |
-### 2.4 使用 OpenID 作为用户名认证登录
+## 4. 使用 OpenID 作为用户名认证登录
OpenID Connect (OIDC) 使用 keycloack 作为 OIDC 服务权限认证服务。
-#### 配置
+### 配置
配置位于 iotdb-system.properties,设定 authorizer_provider_class 为 org.apache.iotdb.commons.auth.authorizer.OpenIdAuthorizer 则开启了 openID 服务,默认情况下值为 org.apache.iotdb.commons.auth.authorizer.LocalFileAuthorizer 表示没有开启 openID 服务。
```
@@ -130,7 +117,7 @@ authorizer_provider_class=org.apache.iotdb.commons.auth.authorizer.OpenIdAuthori
```
openID_url=http://127.0.0.1:8080/realms/iotdb/
```
-####keycloack 配置
+### keycloack 配置
1、下载 keycloack 程序(此教程为21.1.0版本),在 keycloack/bin 中启动 keycloack
@@ -215,7 +202,7 @@ curl -X POST "http://{your-keycloack-server}/realms/{your-realm}/protocol/openid
{"access_token":"eyJhbGciOiJSUzI1NiIsInR5cCIgOiAiSldUIiwia2lkIiA6ICJxMS1XbTBvelE1TzBtUUg4LVNKYXAyWmNONE1tdWNXd25RV0tZeFpKNG93In0.eyJleHAiOjE1OTAzOTgwNzEsImlhdCI6MTU5MDM5Nzc3MSwianRpIjoiNjA0ZmYxMDctN2NiNy00NTRmLWIwYmQtY2M2ZDQwMjFiNGU4IiwiaXNzIjoiaHR0cDovL2F1dGguZGVtby5wcmFnbWF0aWNpbmR1c3RyaWVzLmRlL2F1dGgvcmVhbG1zL0lvVERCIiwiYXVkIjoiYWNjb3VudCIsInN1YiI6ImJhMzJlNDcxLWM3NzItNGIzMy04ZGE2LTZmZThhY2RhMDA3MyIsInR5cCI6IkJlYXJlciIsImF6cCI6ImlvdGRiIiwic2Vzc2lvbl9zdGF0ZSI6IjA2MGQyODYyLTE0ZWQtNDJmZS1 [...]
```
-### 2.5 Cli 的批量操作
+## 5. Cli 的批量操作
当您想要通过脚本的方式通过 Cli / Shell 对 IoTDB 进行批量操作时,可以使用-e 参数。通过使用该参数,您可以在不进入客户端输入模式的情况下操作 IoTDB。
为了避免 SQL 语句和其他参数混淆,现在只支持-e 参数作为最后的参数使用。