You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@dolphinscheduler.apache.org by zh...@apache.org on 2022/01/17 12:59:31 UTC

[dolphinscheduler-website] branch master updated: [Task] Refactor shell type and add example (#638)

This is an automated email from the ASF dual-hosted git repository.

zhongjiajie pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/dolphinscheduler-website.git


The following commit(s) were added to refs/heads/master by this push:
     new 9cf3788  [Task] Refactor shell type and add example (#638)
9cf3788 is described below

commit 9cf37885ba41cfee55199b36c584aa451e162e2f
Author: Jiajie Zhong <zh...@hotmail.com>
AuthorDate: Mon Jan 17 20:59:22 2022 +0800

    [Task] Refactor shell type and add example (#638)
    
    * separate usage into multiple section
    * use icon in process definitions page instead of screenshot
    * add example for one or two simple actual task
    * add directory for img and only use english screenshot
    
    close: apache/dolphinscheduler#8016
---
 docs/en-us/1.2.0/user_doc/system-manual.md         |   6 +--
 docs/en-us/1.2.1/user_doc/system-manual.md         |   9 ++---
 docs/en-us/1.3.1/user_doc/system-manual.md         |  13 +++---
 docs/en-us/1.3.2/user_doc/system-manual.md         |  13 +++---
 docs/en-us/1.3.3/user_doc/system-manual.md         |  14 +++----
 docs/en-us/1.3.4/user_doc/system-manual.md         |  14 +++----
 docs/en-us/1.3.5/user_doc/system-manual.md         |  14 +++----
 docs/en-us/1.3.6/user_doc/system-manual.md         |  12 ++----
 docs/en-us/1.3.8/user_doc/system-manual.md         |  14 +++----
 docs/en-us/1.3.9/user_doc/system-manual.md         |  12 ++----
 docs/en-us/2.0.0/user_doc/guide/task/shell.md      |  39 ++++++++++++++----
 .../2.0.0/user_doc/guide/workflow-definition.md    |   8 ++--
 docs/en-us/2.0.1/user_doc/guide/task/shell.md      |  39 ++++++++++++++----
 .../2.0.1/user_doc/guide/workflow-definition.md    |   8 ++--
 docs/en-us/2.0.2/user_doc/guide/task/shell.md      |  39 ++++++++++++++----
 .../2.0.2/user_doc/guide/workflow-definition.md    |   8 ++--
 docs/en-us/dev/user_doc/guide/task/shell.md        |  39 ++++++++++++++----
 .../dev/user_doc/guide/workflow-definition.md      |   8 ++--
 docs/zh-cn/1.2.0/user_doc/system-manual.md         |  14 +++----
 docs/zh-cn/1.2.1/user_doc/system-manual.md         |  14 +++----
 docs/zh-cn/1.3.1/user_doc/system-manual.md         |  14 +++----
 docs/zh-cn/1.3.2/user_doc/system-manual.md         |  12 ++----
 docs/zh-cn/1.3.3/user_doc/system-manual.md         |  14 +++----
 docs/zh-cn/1.3.4/user_doc/system-manual.md         |  12 ++----
 docs/zh-cn/1.3.5/user_doc/system-manual.md         |  12 ++----
 docs/zh-cn/1.3.6/user_doc/system-manual.md         |  12 ++----
 docs/zh-cn/1.3.8/user_doc/system-manual.md         |  14 +++----
 docs/zh-cn/1.3.9/user_doc/system-manual.md         |  12 ++----
 docs/zh-cn/2.0.0/user_doc/guide/task/shell.md      |  44 ++++++++++++++++-----
 .../2.0.0/user_doc/guide/workflow-definition.md    |   8 ++--
 docs/zh-cn/2.0.1/user_doc/guide/task/shell.md      |  44 ++++++++++++++++-----
 .../2.0.1/user_doc/guide/workflow-definition.md    |   8 ++--
 docs/zh-cn/2.0.2/user_doc/guide/task/shell.md      |  44 ++++++++++++++++-----
 .../2.0.2/user_doc/guide/workflow-definition.md    |   8 ++--
 docs/zh-cn/dev/user_doc/guide/task/shell.md        |  44 ++++++++++++++++-----
 .../dev/user_doc/guide/workflow-definition.md      |   6 +--
 img/shell-en.png                                   | Bin 65759 -> 0 bytes
 img/shell.png                                      | Bin 3245 -> 0 bytes
 img/shell_dag.png                                  | Bin 54848 -> 0 bytes
 img/tasks/demo/shell.jpg                           | Bin 0 -> 632738 bytes
 img/tasks/demo/shell_custom_param.jpg              | Bin 0 -> 556773 bytes
 img/tasks/icons/shell.png                          | Bin 0 -> 747 bytes
 42 files changed, 396 insertions(+), 249 deletions(-)

diff --git a/docs/en-us/1.2.0/user_doc/system-manual.md b/docs/en-us/1.2.0/user_doc/system-manual.md
index b81c653..45f90c3 100644
--- a/docs/en-us/1.2.0/user_doc/system-manual.md
+++ b/docs/en-us/1.2.0/user_doc/system-manual.md
@@ -510,11 +510,9 @@ conf/common/hadoop.properties
 ### Shell
 
   - The shell node, when the worker executes, generates a temporary shell script, which is executed by a Linux user with the same name as the tenant.
-> Drag the ![PNG](https://analysys.github.io/easyscheduler_docs/images/toolbar_SHELL.png) task node in the toolbar onto the palette and double-click the task node as follows:
+> Drag the <img src="/img/tasks/icons/shell.png" width="15"/> task node in the toolbar onto the palette and double-click the task node as follows:
 
-<p align="center">
-   <img src="/img/shell-en.png" width="80%" />
- </p>`
+![demo-shell-simple](/img/tasks/demo/shell.jpg)
 
 - Node name: The node name in a process definition is unique
 - Run flag: Identify whether the node can be scheduled properly, and if it does not need to be executed, you can turn on the forbidden execution switch.
diff --git a/docs/en-us/1.2.1/user_doc/system-manual.md b/docs/en-us/1.2.1/user_doc/system-manual.md
index b81c653..bd6a5dc 100644
--- a/docs/en-us/1.2.1/user_doc/system-manual.md
+++ b/docs/en-us/1.2.1/user_doc/system-manual.md
@@ -509,12 +509,11 @@ conf/common/hadoop.properties
 
 ### Shell
 
-  - The shell node, when the worker executes, generates a temporary shell script, which is executed by a Linux user with the same name as the tenant.
-> Drag the ![PNG](https://analysys.github.io/easyscheduler_docs/images/toolbar_SHELL.png) task node in the toolbar onto the palette and double-click the task node as follows:
+- The shell node, when the worker executes, generates a temporary shell script, which is executed by a Linux user with the same name as the tenant.
 
-<p align="center">
-   <img src="/img/shell-en.png" width="80%" />
- </p>`
+Drag the <img src="/img/tasks/icons/shell.png" width="15"/> task node in the toolbar onto the palette and double-click the task node as follows:
+
+![demo-shell-simple](/img/tasks/demo/shell.jpg)
 
 - Node name: The node name in a process definition is unique
 - Run flag: Identify whether the node can be scheduled properly, and if it does not need to be executed, you can turn on the forbidden execution switch.
diff --git a/docs/en-us/1.3.1/user_doc/system-manual.md b/docs/en-us/1.3.1/user_doc/system-manual.md
index e31b790..7f69d76 100644
--- a/docs/en-us/1.3.1/user_doc/system-manual.md
+++ b/docs/en-us/1.3.1/user_doc/system-manual.md
@@ -37,11 +37,10 @@ The home page contains task status statistics, process status statistics, and wo
     <p align="center">
         <img src="/img/dag5.png" width="80%" />
     </p>
-- Drag in the toolbar<img src="/img/shell.png" width="35"/>
+- Drag in the toolbar <img src="/img/tasks/icons/shell.png" width="15"/>
 Add a Shell task to the drawing board, as shown in the figure below:
-    <p align="center">
-        <img src="/img/shell-en.png" width="80%" />
-    </p>
+
+![demo-shell-simple](/img/tasks/demo/shell.jpg)
 
   - **Add parameter settings for shell tasks:**
   1. Fill in the "Node Name", "Description", and "Script" fields;
@@ -547,11 +546,9 @@ Note: If you enable **kerberos**, you need to fill in **Principal**
 #### 7.1 Shell node
   > Shell node, when the worker is executed, a temporary shell script is generated, and the linux user with the same name as the tenant executes the script.
   - Click Project Management-Project Name-Workflow Definition, and click the "Create Workflow" button to enter the DAG editing page.
-  - Drag <img src="/img/shell.png" width="35"/> from the toolbar to the drawing board, as shown in the figure below:
+  - Drag <img src="/img/tasks/icons/shell.png" width="15"/> from the toolbar to the drawing board, as shown in the figure below:
 
-    <p align="center">
-        <img src="/img/shell-en.png" width="80%" />
-    </p> 
+    ![demo-shell-simple](/img/tasks/demo/shell.jpg)
 
 - Node name: The node name in a workflow definition is unique.
 - Run flag: Identifies whether this node can be scheduled normally, if it does not need to be executed, you can turn on the prohibition switch.
diff --git a/docs/en-us/1.3.2/user_doc/system-manual.md b/docs/en-us/1.3.2/user_doc/system-manual.md
index d460564..e670aba 100644
--- a/docs/en-us/1.3.2/user_doc/system-manual.md
+++ b/docs/en-us/1.3.2/user_doc/system-manual.md
@@ -43,10 +43,9 @@ The home page contains task status statistics, process status statistics, and wo
   <p align="center">
       <img src="/img/dag5.png" width="80%" />
   </p>
-- Drag in the toolbar <img src="/img/shell.png" width="35"/> Add a Shell task to the drawing board, as shown in the figure below:
-  <p align="center">
-      <img src="/img/shell-en.png" width="80%" />
-  </p>
+- Drag in the toolbar <img src="/img/tasks/icons/shell.png" width="15"/> Add a Shell task to the drawing board, as shown in the figure below:
+  ![demo-shell-simple](/img/tasks/demo/shell.jpg)
+
 - **Add parameter settings for this shell task:**
 
 1. Fill in the "Node Name", "Description", and "Script" fields;
@@ -595,11 +594,9 @@ Token call example
 > Shell node, when the worker is executed, a temporary shell script is generated, and the linux user with the same name as the tenant executes the script.
 
 - Click Project Management-Project Name-Workflow Definition, and click the "Create Workflow" button to enter the DAG editing page.
-- Drag <img src="/img/shell.png" width="35"/> from the toolbar to the drawing board, as shown in the figure below:
+- Drag <img src="/img/tasks/icons/shell.png" width="15"/> from the toolbar to the drawing board, as shown in the figure below:
 
-  <p align="center">
-      <img src="/img/shell-en.png" width="80%" />
-  </p>
+![demo-shell-simple](/img/tasks/demo/shell.jpg)
 
 - Node name: The node name in a workflow definition is unique.
 - Run flag: Identifies whether this node can be scheduled normally, if it does not need to be executed, you can turn on the prohibition switch.
diff --git a/docs/en-us/1.3.3/user_doc/system-manual.md b/docs/en-us/1.3.3/user_doc/system-manual.md
index 8b235ab..4052467 100644
--- a/docs/en-us/1.3.3/user_doc/system-manual.md
+++ b/docs/en-us/1.3.3/user_doc/system-manual.md
@@ -43,10 +43,10 @@ The home page contains task status statistics, process status statistics, and wo
   <p align="center">
       <img src="/img/dag5.png" width="80%" />
   </p>
-- Drag in the toolbar <img src="/img/shell.png" width="35"/> Add a Shell task to the drawing board, as shown in the figure below:
-  <p align="center">
-      <img src="/img/shell-en.png" width="80%" />
-  </p>
+- Drag in the toolbar <img src="/img/tasks/icons/shell.png" width="15"/> Add a Shell task to the drawing board, as shown in the figure below:
+
+  ![demo-shell-simple](/img/tasks/demo/shell.jpg)
+
 - **Add parameter settings for this shell task:**
 
 1. Fill in the "Node Name", "Description", and "Script" fields;
@@ -595,11 +595,9 @@ Token call example
 > Shell node, when the worker is executed, a temporary shell script is generated, and the linux user with the same name as the tenant executes the script.
 
 - Click Project Management-Project Name-Workflow Definition, and click the "Create Workflow" button to enter the DAG editing page.
-- Drag <img src="/img/shell.png" width="35"/> from the toolbar to the drawing board, as shown in the figure below:
+- Drag <img src="/img/tasks/icons/shell.png" width="15"/> from the toolbar to the drawing board, as shown in the figure below:
 
-  <p align="center">
-      <img src="/img/shell-en.png" width="80%" />
-  </p>
+  ![demo-shell-simple](/img/tasks/demo/shell.jpg)
 
 - Node name: The node name in a workflow definition is unique.
 - Run flag: Identifies whether this node can be scheduled normally, if it does not need to be executed, you can turn on the prohibition switch.
diff --git a/docs/en-us/1.3.4/user_doc/system-manual.md b/docs/en-us/1.3.4/user_doc/system-manual.md
index ab5be6f..446c4d0 100644
--- a/docs/en-us/1.3.4/user_doc/system-manual.md
+++ b/docs/en-us/1.3.4/user_doc/system-manual.md
@@ -43,10 +43,10 @@ The home page contains task status statistics, process status statistics, and wo
   <p align="center">
       <img src="/img/dag5.png" width="80%" />
   </p>
-- Drag in the toolbar <img src="/img/shell.png" width="35"/> Add a Shell task to the drawing board, as shown in the figure below:
-  <p align="center">
-      <img src="/img/shell-en.png" width="80%" />
-  </p>
+- Drag in the toolbar <img src="/img/tasks/icons/shell.png" width="15"/> Add a Shell task to the drawing board, as shown in the figure below:
+
+  ![demo-shell-simple](/img/tasks/demo/shell.jpg)
+
 - **Add parameter settings for this shell task:**
 
 1. Fill in the "Node Name", "Description", and "Script" fields;
@@ -596,11 +596,9 @@ Token call example
 > Shell node, when the worker is executed, a temporary shell script is generated, and the linux user with the same name as the tenant executes the script.
 
 - Click Project Management-Project Name-Workflow Definition, and click the "Create Workflow" button to enter the DAG editing page.
-- Drag <img src="/img/shell.png" width="35"/> from the toolbar to the drawing board, as shown in the figure below:
+- Drag ![demo-shell-simple](/img/tasks/demo/shell.jpg) from the toolbar to the drawing board, as shown in the figure below:
 
-  <p align="center">
-      <img src="/img/shell-en.png" width="80%" />
-  </p>
+  ![demo-shell-simple](/img/tasks/demo/shell.jpg)
 
 - Node name: The node name in a workflow definition is unique.
 - Run flag: Identifies whether this node can be scheduled normally, if it does not need to be executed, you can turn on the prohibition switch.
diff --git a/docs/en-us/1.3.5/user_doc/system-manual.md b/docs/en-us/1.3.5/user_doc/system-manual.md
index 5c1b0a3..089a500 100644
--- a/docs/en-us/1.3.5/user_doc/system-manual.md
+++ b/docs/en-us/1.3.5/user_doc/system-manual.md
@@ -43,10 +43,10 @@ The home page contains task status statistics, process status statistics, and wo
   <p align="center">
       <img src="/img/dag5.png" width="80%" />
   </p>
-- Drag in the toolbar <img src="/img/shell.png" width="35"/> Add a Shell task to the drawing board, as shown in the figure below:
-  <p align="center">
-      <img src="/img/shell-en.png" width="80%" />
-  </p>
+- Drag in the toolbar <img src="/img/tasks/icons/shell.png" width="15"/> Add a Shell task to the drawing board, as shown in the figure below:
+
+![demo-shell-simple](/img/tasks/demo/shell.jpg)
+
 - **Add parameter settings for this shell task:**
 
 1. Fill in the "Node Name", "Description", and "Script" fields;
@@ -617,11 +617,9 @@ worker.groups=default,test
 > Shell node, when the worker is executed, a temporary shell script is generated, and the linux user with the same name as the tenant executes the script.
 
 - Click Project Management-Project Name-Workflow Definition, and click the "Create Workflow" button to enter the DAG editing page.
-- Drag <img src="/img/shell.png" width="35"/> from the toolbar to the drawing board, as shown in the figure below:
+- Drag <img src="/img/tasks/icons/shell.png" width="15"/> from the toolbar to the drawing board, as shown in the figure below:
 
-  <p align="center">
-      <img src="/img/shell-en.png" width="80%" />
-  </p>
+  ![demo-shell-simple](/img/tasks/demo/shell.jpg)
 
 - Node name: The node name in a workflow definition is unique.
 - Run flag: Identifies whether this node can be scheduled normally, if it does not need to be executed, you can turn on the prohibition switch.
diff --git a/docs/en-us/1.3.6/user_doc/system-manual.md b/docs/en-us/1.3.6/user_doc/system-manual.md
index 5ffb467..8383884 100644
--- a/docs/en-us/1.3.6/user_doc/system-manual.md
+++ b/docs/en-us/1.3.6/user_doc/system-manual.md
@@ -43,10 +43,8 @@ The home page contains task status statistics, process status statistics, and wo
   <p align="center">
       <img src="/img/dag5.png" width="80%" />
   </p>
-- Drag in the toolbar <img src="/img/shell.png" width="35"/> Add a Shell task to the drawing board, as shown in the figure below:
-  <p align="center">
-      <img src="/img/shell-en.png" width="80%" />
-  </p>
+- Drag in the toolbar <img src="/img/tasks/icons/shell.png" width="15"/> Add a Shell task to the drawing board, as shown in the figure below:
+  ![demo-shell-simple](/img/tasks/demo/shell.jpg)
 - **Add parameter settings for this shell task:**
 
 1. Fill in the "Node Name", "Description", and "Script" fields;
@@ -613,11 +611,9 @@ worker.groups=default,test
 > Shell node, when the worker is executed, a temporary shell script is generated, and the linux user with the same name as the tenant executes the script.
 
 - Click Project Management-Project Name-Workflow Definition, and click the "Create Workflow" button to enter the DAG editing page.
-- Drag <img src="/img/shell.png" width="35"/> from the toolbar to the drawing board, as shown in the figure below:
+- Drag <img src="/img/tasks/icons/shell.png" width="15"/> from the toolbar to the drawing board, as shown in the figure below:
 
-  <p align="center">
-      <img src="/img/shell-en.png" width="80%" />
-  </p>
+  ![demo-shell-simple](/img/tasks/demo/shell.jpg)
 
 - Node name: The node name in a workflow definition is unique.
 - Run flag: Identifies whether this node can be scheduled normally, if it does not need to be executed, you can turn on the prohibition switch.
diff --git a/docs/en-us/1.3.8/user_doc/system-manual.md b/docs/en-us/1.3.8/user_doc/system-manual.md
index 5ffb467..50866eb 100644
--- a/docs/en-us/1.3.8/user_doc/system-manual.md
+++ b/docs/en-us/1.3.8/user_doc/system-manual.md
@@ -43,10 +43,10 @@ The home page contains task status statistics, process status statistics, and wo
   <p align="center">
       <img src="/img/dag5.png" width="80%" />
   </p>
-- Drag in the toolbar <img src="/img/shell.png" width="35"/> Add a Shell task to the drawing board, as shown in the figure below:
-  <p align="center">
-      <img src="/img/shell-en.png" width="80%" />
-  </p>
+- Drag in the toolbar <img src="/img/tasks/icons/shell.png" width="15"/> Add a Shell task to the drawing board, as shown in the figure below:
+
+  ![demo-shell-simple](/img/tasks/demo/shell.jpg)
+
 - **Add parameter settings for this shell task:**
 
 1. Fill in the "Node Name", "Description", and "Script" fields;
@@ -613,11 +613,9 @@ worker.groups=default,test
 > Shell node, when the worker is executed, a temporary shell script is generated, and the linux user with the same name as the tenant executes the script.
 
 - Click Project Management-Project Name-Workflow Definition, and click the "Create Workflow" button to enter the DAG editing page.
-- Drag <img src="/img/shell.png" width="35"/> from the toolbar to the drawing board, as shown in the figure below:
+- Drag <img src="/img/tasks/icons/shell.png" width="15"/> from the toolbar to the drawing board, as shown in the figure below:
 
-  <p align="center">
-      <img src="/img/shell-en.png" width="80%" />
-  </p>
+  ![demo-shell-simple](/img/tasks/demo/shell.jpg)
 
 - Node name: The node name in a workflow definition is unique.
 - Run flag: Identifies whether this node can be scheduled normally, if it does not need to be executed, you can turn on the prohibition switch.
diff --git a/docs/en-us/1.3.9/user_doc/system-manual.md b/docs/en-us/1.3.9/user_doc/system-manual.md
index aff426c..e8aee35 100644
--- a/docs/en-us/1.3.9/user_doc/system-manual.md
+++ b/docs/en-us/1.3.9/user_doc/system-manual.md
@@ -43,10 +43,8 @@ The home page contains task status statistics, process status statistics, and wo
   <p align="center">
       <img src="/img/dag5.png" width="80%" />
   </p>
-- Drag in the toolbar <img src="/img/shell.png" width="35"/> Add a Shell task to the drawing board, as shown in the figure below:
-  <p align="center">
-      <img src="/img/shell-en.png" width="80%" />
-  </p>
+- Drag in the toolbar <img src="/img/tasks/icons/shell.png" width="15"/> Add a Shell task to the drawing board, as shown in the figure below:
+  ![demo-shell-simple](/img/tasks/demo/shell.jpg)
 - **Add parameter settings for this shell task:**
 
 1. Fill in the "Node Name", "Description", and "Script" fields;
@@ -613,11 +611,9 @@ worker.groups=default,test
 > Shell node, when the worker is executed, a temporary shell script is generated, and the Linux user with the same name as the tenant executes the script.
 
 - Click Project Management-Project Name-Workflow Definition, and click the "Create Workflow" button to enter the DAG editing page.
-- Drag <img src="/img/shell.png" width="35"/> from the toolbar to the drawing board, as shown in the figure below:
+- Drag <img src="/img/tasks/icons/shell.png" width="15"/> from the toolbar to the drawing board, as shown in the figure below:
 
-  <p align="center">
-      <img src="/img/shell-en.png" width="80%" />
-  </p>
+![demo-shell-simple](/img/tasks/demo/shell.jpg)
 
 - Node name: The node name in a workflow definition is unique.
 - Run flag: Identifies whether this node can be scheduled normally, if it does not need to be executed, you can turn on the prohibition switch.
diff --git a/docs/en-us/2.0.0/user_doc/guide/task/shell.md b/docs/en-us/2.0.0/user_doc/guide/task/shell.md
index bae4cde..2e2fff6 100644
--- a/docs/en-us/2.0.0/user_doc/guide/task/shell.md
+++ b/docs/en-us/2.0.0/user_doc/guide/task/shell.md
@@ -1,22 +1,47 @@
-# Shell node
+# Shell
 
-> Shell node, when the worker is executed, a temporary shell script is generated, and the Linux user with the same name as the tenant executes the script.
+## Overview
+
+Shell task, used to create a shell-type task and execute a series of shell scripts. When the worker executed,
+a temporary shell script is generated, and the Linux user with the same name as the tenant executes the script.
+
+## Create Task
 
 - Click Project Management-Project Name-Workflow Definition, and click the "Create Workflow" button to enter the DAG editing page.
-- Drag <img src="/img/shell.png" width="35"/> from the toolbar to the drawing board, as shown in the figure below:
+- Drag <img src="/img/tasks/icons/shell.png" width="15"/> from the toolbar to the drawing board.
 
-  <p align="center">
-      <img src="/img/shell-en.png" width="80%" />
-  </p>
+## Task Parameter
 
 - Node name: The node name in a workflow definition is unique.
 - Run flag: Identifies whether this node can be scheduled normally, if it does not need to be executed, you can turn on the prohibition switch.
 - Descriptive information: describe the function of the node.
 - Task priority: When the number of worker threads is insufficient, they are executed in order from high to low, and when the priority is the same, they are executed according to the first-in first-out principle.
 - Worker grouping: Tasks are assigned to the machines of the worker group to execute. If Default is selected, a worker machine will be randomly selected for execution.
+- Environment Name: Configure the environment name in which to run the script.
 - Number of failed retry attempts: The number of times the task failed to be resubmitted. It supports drop-down and hand-filling.
 - Failed retry interval: The time interval for resubmitting the task after a failed task. It supports drop-down and hand-filling.
 - Timeout alarm: Check the timeout alarm and timeout failure. When the task exceeds the "timeout period", an alarm email will be sent and the task execution will fail.
 - Script: SHELL program developed by users.
 - Resource: Refers to the list of resource files that need to be called in the script, and the files uploaded or created by the resource center-file management.
-- User-defined parameters: It is a user-defined parameter that is part of SHELL, which will replace the content with \${variable} in the script.
\ No newline at end of file
+- Custom parameters: It is a user-defined parameter that is part of SHELL, which will replace the content with \${variable} in the script.
+
+## Task Example
+
+### Simply Print
+
+This example is a sample echo task which only print one line in the log file, including the content
+"This is a demo of shell task". If your task only run one or two shell command, you could add task base on this example.
+
+![demo-shell-simple](/img/tasks/demo/shell.jpg)
+
+### Custom Parameters
+
+This example is a sample custom parameter task which could reuse existing as template, or for dynamic task. First of all,
+we should declare a custom parameter named "param_key", with the value as "param_val". Then we using keyword "${param_key}"
+to using the parameter we just declared. After this example is being run, we would see "param_val" print in the log
+
+![demo-shell-custom-param](/img/tasks/demo/shell_custom_param.jpg)
+
+## Notice
+
+None
diff --git a/docs/en-us/2.0.0/user_doc/guide/workflow-definition.md b/docs/en-us/2.0.0/user_doc/guide/workflow-definition.md
index 47f616b..ddb9d2f 100644
--- a/docs/en-us/2.0.0/user_doc/guide/workflow-definition.md
+++ b/docs/en-us/2.0.0/user_doc/guide/workflow-definition.md
@@ -6,10 +6,10 @@
   <p align="center">
       <img src="/img/dag5.png" width="80%" />
   </p>
-- Drag in the toolbar <img src="/img/shell.png" width="35"/> Add a Shell task to the drawing board, as shown in the figure below:
-  <p align="center">
-      <img src="/img/shell-en.png" width="80%" />
-  </p>
+- Drag in the toolbar <img src="/img/tasks/icons/shell.png" width="15"/> Add a Shell task to the drawing board, as shown in the figure below:
+
+  ![demo-shell-simple](/img/tasks/demo/shell.jpg)
+
 - **Add parameter settings for this shell task:**
 
 1. Fill in the "Node Name", "Description", and "Script" fields;
diff --git a/docs/en-us/2.0.1/user_doc/guide/task/shell.md b/docs/en-us/2.0.1/user_doc/guide/task/shell.md
index bae4cde..2e2fff6 100644
--- a/docs/en-us/2.0.1/user_doc/guide/task/shell.md
+++ b/docs/en-us/2.0.1/user_doc/guide/task/shell.md
@@ -1,22 +1,47 @@
-# Shell node
+# Shell
 
-> Shell node, when the worker is executed, a temporary shell script is generated, and the Linux user with the same name as the tenant executes the script.
+## Overview
+
+Shell task, used to create a shell-type task and execute a series of shell scripts. When the worker executed,
+a temporary shell script is generated, and the Linux user with the same name as the tenant executes the script.
+
+## Create Task
 
 - Click Project Management-Project Name-Workflow Definition, and click the "Create Workflow" button to enter the DAG editing page.
-- Drag <img src="/img/shell.png" width="35"/> from the toolbar to the drawing board, as shown in the figure below:
+- Drag <img src="/img/tasks/icons/shell.png" width="15"/> from the toolbar to the drawing board.
 
-  <p align="center">
-      <img src="/img/shell-en.png" width="80%" />
-  </p>
+## Task Parameter
 
 - Node name: The node name in a workflow definition is unique.
 - Run flag: Identifies whether this node can be scheduled normally, if it does not need to be executed, you can turn on the prohibition switch.
 - Descriptive information: describe the function of the node.
 - Task priority: When the number of worker threads is insufficient, they are executed in order from high to low, and when the priority is the same, they are executed according to the first-in first-out principle.
 - Worker grouping: Tasks are assigned to the machines of the worker group to execute. If Default is selected, a worker machine will be randomly selected for execution.
+- Environment Name: Configure the environment name in which to run the script.
 - Number of failed retry attempts: The number of times the task failed to be resubmitted. It supports drop-down and hand-filling.
 - Failed retry interval: The time interval for resubmitting the task after a failed task. It supports drop-down and hand-filling.
 - Timeout alarm: Check the timeout alarm and timeout failure. When the task exceeds the "timeout period", an alarm email will be sent and the task execution will fail.
 - Script: SHELL program developed by users.
 - Resource: Refers to the list of resource files that need to be called in the script, and the files uploaded or created by the resource center-file management.
-- User-defined parameters: It is a user-defined parameter that is part of SHELL, which will replace the content with \${variable} in the script.
\ No newline at end of file
+- Custom parameters: It is a user-defined parameter that is part of SHELL, which will replace the content with \${variable} in the script.
+
+## Task Example
+
+### Simply Print
+
+This example is a sample echo task which only print one line in the log file, including the content
+"This is a demo of shell task". If your task only run one or two shell command, you could add task base on this example.
+
+![demo-shell-simple](/img/tasks/demo/shell.jpg)
+
+### Custom Parameters
+
+This example is a sample custom parameter task which could reuse existing as template, or for dynamic task. First of all,
+we should declare a custom parameter named "param_key", with the value as "param_val". Then we using keyword "${param_key}"
+to using the parameter we just declared. After this example is being run, we would see "param_val" print in the log
+
+![demo-shell-custom-param](/img/tasks/demo/shell_custom_param.jpg)
+
+## Notice
+
+None
diff --git a/docs/en-us/2.0.1/user_doc/guide/workflow-definition.md b/docs/en-us/2.0.1/user_doc/guide/workflow-definition.md
index 47f616b..ddb9d2f 100644
--- a/docs/en-us/2.0.1/user_doc/guide/workflow-definition.md
+++ b/docs/en-us/2.0.1/user_doc/guide/workflow-definition.md
@@ -6,10 +6,10 @@
   <p align="center">
       <img src="/img/dag5.png" width="80%" />
   </p>
-- Drag in the toolbar <img src="/img/shell.png" width="35"/> Add a Shell task to the drawing board, as shown in the figure below:
-  <p align="center">
-      <img src="/img/shell-en.png" width="80%" />
-  </p>
+- Drag in the toolbar <img src="/img/tasks/icons/shell.png" width="15"/> Add a Shell task to the drawing board, as shown in the figure below:
+
+  ![demo-shell-simple](/img/tasks/demo/shell.jpg)
+
 - **Add parameter settings for this shell task:**
 
 1. Fill in the "Node Name", "Description", and "Script" fields;
diff --git a/docs/en-us/2.0.2/user_doc/guide/task/shell.md b/docs/en-us/2.0.2/user_doc/guide/task/shell.md
index bae4cde..f23fc24 100644
--- a/docs/en-us/2.0.2/user_doc/guide/task/shell.md
+++ b/docs/en-us/2.0.2/user_doc/guide/task/shell.md
@@ -1,22 +1,47 @@
-# Shell node
+# Shell
 
-> Shell node, when the worker is executed, a temporary shell script is generated, and the Linux user with the same name as the tenant executes the script.
+## Overview
+
+Shell task, used to create a shell-type task and execute a series of shell scripts. When the worker executed,
+a temporary shell script is generated, and the Linux user with the same name as the tenant executes the script.
+
+## Create Task
 
 - Click Project Management-Project Name-Workflow Definition, and click the "Create Workflow" button to enter the DAG editing page.
-- Drag <img src="/img/shell.png" width="35"/> from the toolbar to the drawing board, as shown in the figure below:
+- Drag <img src="/img/tasks/icons/shell.png" width="15"/> from the toolbar to the drawing board.
 
-  <p align="center">
-      <img src="/img/shell-en.png" width="80%" />
-  </p>
+## Task Parameter
 
 - Node name: The node name in a workflow definition is unique.
 - Run flag: Identifies whether this node can be scheduled normally, if it does not need to be executed, you can turn on the prohibition switch.
 - Descriptive information: describe the function of the node.
 - Task priority: When the number of worker threads is insufficient, they are executed in order from high to low, and when the priority is the same, they are executed according to the first-in first-out principle.
 - Worker grouping: Tasks are assigned to the machines of the worker group to execute. If Default is selected, a worker machine will be randomly selected for execution.
+- Environment Name: Configure the environment name in which to run the script.
 - Number of failed retry attempts: The number of times the task failed to be resubmitted. It supports drop-down and hand-filling.
 - Failed retry interval: The time interval for resubmitting the task after a failed task. It supports drop-down and hand-filling.
 - Timeout alarm: Check the timeout alarm and timeout failure. When the task exceeds the "timeout period", an alarm email will be sent and the task execution will fail.
 - Script: SHELL program developed by users.
 - Resource: Refers to the list of resource files that need to be called in the script, and the files uploaded or created by the resource center-file management.
-- User-defined parameters: It is a user-defined parameter that is part of SHELL, which will replace the content with \${variable} in the script.
\ No newline at end of file
+- Custom parameters: It is a user-defined parameter that is part of SHELL, which will replace the content with \${variable} in the script.
+
+## Task Example
+
+### Simply Print
+
+This example is a sample echo task which only print one line in the log file, including the content
+"This is a demo of shell task". If your task only run one or two shell command, you could add task base on this example. 
+
+![demo-shell-simple](/img/tasks/demo/shell.jpg)
+
+### Custom Parameters
+
+This example is a sample custom parameter task which could reuse existing as template, or for dynamic task. First of all,
+we should declare a custom parameter named "param_key", with the value as "param_val". Then we using keyword "${param_key}"
+to using the parameter we just declared. After this example is being run, we would see "param_val" print in the log
+
+![demo-shell-custom-param](/img/tasks/demo/shell_custom_param.jpg)
+
+## Notice
+
+None
\ No newline at end of file
diff --git a/docs/en-us/2.0.2/user_doc/guide/workflow-definition.md b/docs/en-us/2.0.2/user_doc/guide/workflow-definition.md
index 47f616b..ddb9d2f 100644
--- a/docs/en-us/2.0.2/user_doc/guide/workflow-definition.md
+++ b/docs/en-us/2.0.2/user_doc/guide/workflow-definition.md
@@ -6,10 +6,10 @@
   <p align="center">
       <img src="/img/dag5.png" width="80%" />
   </p>
-- Drag in the toolbar <img src="/img/shell.png" width="35"/> Add a Shell task to the drawing board, as shown in the figure below:
-  <p align="center">
-      <img src="/img/shell-en.png" width="80%" />
-  </p>
+- Drag in the toolbar <img src="/img/tasks/icons/shell.png" width="15"/> Add a Shell task to the drawing board, as shown in the figure below:
+
+  ![demo-shell-simple](/img/tasks/demo/shell.jpg)
+
 - **Add parameter settings for this shell task:**
 
 1. Fill in the "Node Name", "Description", and "Script" fields;
diff --git a/docs/en-us/dev/user_doc/guide/task/shell.md b/docs/en-us/dev/user_doc/guide/task/shell.md
index bae4cde..9e8a9fe 100644
--- a/docs/en-us/dev/user_doc/guide/task/shell.md
+++ b/docs/en-us/dev/user_doc/guide/task/shell.md
@@ -1,22 +1,47 @@
-# Shell node
+# Shell
 
-> Shell node, when the worker is executed, a temporary shell script is generated, and the Linux user with the same name as the tenant executes the script.
+## Overview
+
+Shell task, used to create a shell-type task and execute a series of shell scripts. When the worker executed,
+a temporary shell script is generated, and the Linux user with the same name as the tenant executes the script.
+
+## Create Task
 
 - Click Project Management-Project Name-Workflow Definition, and click the "Create Workflow" button to enter the DAG editing page.
-- Drag <img src="/img/shell.png" width="35"/> from the toolbar to the drawing board, as shown in the figure below:
+- Drag <img src="/img/tasks/icons/shell.png" width="15"/> from the toolbar to the drawing board.
 
-  <p align="center">
-      <img src="/img/shell-en.png" width="80%" />
-  </p>
+## Task Parameter
 
 - Node name: The node name in a workflow definition is unique.
 - Run flag: Identifies whether this node can be scheduled normally, if it does not need to be executed, you can turn on the prohibition switch.
 - Descriptive information: describe the function of the node.
 - Task priority: When the number of worker threads is insufficient, they are executed in order from high to low, and when the priority is the same, they are executed according to the first-in first-out principle.
 - Worker grouping: Tasks are assigned to the machines of the worker group to execute. If Default is selected, a worker machine will be randomly selected for execution.
+- Environment Name: Configure the environment name in which to run the script.
 - Number of failed retry attempts: The number of times the task failed to be resubmitted. It supports drop-down and hand-filling.
 - Failed retry interval: The time interval for resubmitting the task after a failed task. It supports drop-down and hand-filling.
 - Timeout alarm: Check the timeout alarm and timeout failure. When the task exceeds the "timeout period", an alarm email will be sent and the task execution will fail.
 - Script: SHELL program developed by users.
 - Resource: Refers to the list of resource files that need to be called in the script, and the files uploaded or created by the resource center-file management.
-- User-defined parameters: It is a user-defined parameter that is part of SHELL, which will replace the content with \${variable} in the script.
\ No newline at end of file
+- Custom parameters: It is a user-defined parameter that is part of SHELL, which will replace the content with \${variable} in the script.
+
+## Task Example
+
+### Simply Print
+
+This example is a sample echo task which only print one line in the log file, including the content
+"This is a demo of shell task". If your task only run one or two shell command, you could add task base on this example.
+
+![demo-shell-simple](/img/tasks/demo/shell.jpg)
+
+### Custom Parameters
+
+This example is a sample custom parameter task which could reuse existing as template, or for dynamic task. First of all,
+we should declare a custom parameter named "param_key", with the value as "param_val". Then we using keyword "${param_key}"
+to using the parameter we just declared. After this example is being run, we would see "param_val" print in the log
+
+![demo-shell-custom-param](/img/tasks/demo/shell_custom_param.jpg)
+
+## Notice
+
+None
\ No newline at end of file
diff --git a/docs/en-us/dev/user_doc/guide/workflow-definition.md b/docs/en-us/dev/user_doc/guide/workflow-definition.md
index 47f616b..ddb9d2f 100644
--- a/docs/en-us/dev/user_doc/guide/workflow-definition.md
+++ b/docs/en-us/dev/user_doc/guide/workflow-definition.md
@@ -6,10 +6,10 @@
   <p align="center">
       <img src="/img/dag5.png" width="80%" />
   </p>
-- Drag in the toolbar <img src="/img/shell.png" width="35"/> Add a Shell task to the drawing board, as shown in the figure below:
-  <p align="center">
-      <img src="/img/shell-en.png" width="80%" />
-  </p>
+- Drag in the toolbar <img src="/img/tasks/icons/shell.png" width="15"/> Add a Shell task to the drawing board, as shown in the figure below:
+
+  ![demo-shell-simple](/img/tasks/demo/shell.jpg)
+
 - **Add parameter settings for this shell task:**
 
 1. Fill in the "Node Name", "Description", and "Script" fields;
diff --git a/docs/zh-cn/1.2.0/user_doc/system-manual.md b/docs/zh-cn/1.2.0/user_doc/system-manual.md
index 4c38db6..d47afff 100644
--- a/docs/zh-cn/1.2.0/user_doc/system-manual.md
+++ b/docs/zh-cn/1.2.0/user_doc/system-manual.md
@@ -37,10 +37,10 @@
     <p align="center">
         <img src="/img/dag0.png" width="80%" />
     </p>  
-  - 工具栏中拖拽<img src="/img/shell.png" width="35"/>到画板中,新增一个Shell任务,如下图所示:
-    <p align="center">
-        <img src="/img/shell_dag.png" width="80%" />
-    </p>  
+  - 工具栏中拖拽 <img src="/img/tasks/icons/shell.png" width="15"/> 到画板中,新增一个Shell任务,如下图所示:
+
+    ![demo-shell-simple](/img/tasks/demo/shell.jpg)
+
   - **添加shell任务的参数设置:**
   1. 填写“节点名称”,“描述”,“脚本”字段;
   1. “运行标志”勾选“正常”,若勾选“禁止执行”,运行工作流不会执行该任务;
@@ -570,11 +570,9 @@ conf/common/hadoop.properties
 #### 7.1 Shell节点
   > shell节点,在worker执行的时候,会生成一个临时shell脚本,使用租户同名的linux用户执行这个脚本。
   - 点击项目管理-项目名称-工作流定义,点击"创建工作流"按钮,进入DAG编辑页面。
-  - 工具栏中拖动<img src="/img/shell.png" width="35"/>到画板中,如下图所示:
+  - 工具栏中拖动 <img src="/img/tasks/icons/shell.png" width="15"/> 到画板中,如下图所示:
 
-    <p align="center">
-        <img src="/img/shell_dag.png" width="80%" />
-    </p> 
+    ![demo-shell-simple](/img/tasks/demo/shell.jpg)
 
 - 节点名称:一个工作流定义中的节点名称是唯一的。
 - 运行标志:标识这个节点是否能正常调度,如果不需要执行,可以打开禁止执行开关。
diff --git a/docs/zh-cn/1.2.1/user_doc/system-manual.md b/docs/zh-cn/1.2.1/user_doc/system-manual.md
index 868a737..1f8d164 100644
--- a/docs/zh-cn/1.2.1/user_doc/system-manual.md
+++ b/docs/zh-cn/1.2.1/user_doc/system-manual.md
@@ -37,10 +37,10 @@
     <p align="center">
         <img src="/img/dag0.png" width="80%" />
     </p>  
-  - 工具栏中拖拽<img src="/img/shell.png" width="35"/>到画板中,新增一个Shell任务,如下图所示:
-    <p align="center">
-        <img src="/img/shell_dag.png" width="80%" />
-    </p>  
+  - 工具栏中拖拽 <img src="/img/tasks/icons/shell.png" width="15"/> 到画板中,新增一个Shell任务,如下图所示:
+    
+    ![demo-shell-simple](/img/tasks/demo/shell.jpg)
+
   - **添加shell任务的参数设置:**
   1. 填写“节点名称”,“描述”,“脚本”字段;
   1. “运行标志”勾选“正常”,若勾选“禁止执行”,运行工作流不会执行该任务;
@@ -570,11 +570,9 @@ conf/common/hadoop.properties
 #### 7.1 Shell节点
   > shell节点,在worker执行的时候,会生成一个临时shell脚本,使用租户同名的linux用户执行这个脚本。
   - 点击项目管理-项目名称-工作流定义,点击"创建工作流"按钮,进入DAG编辑页面。
-  - 工具栏中拖动<img src="/img/shell.png" width="35"/>到画板中,如下图所示:
+  - 工具栏中拖动 <img src="/img/tasks/icons/shell.png" width="15"/> 到画板中,如下图所示:
 
-    <p align="center">
-        <img src="/img/shell_dag.png" width="80%" />
-    </p> 
+    ![demo-shell-simple](/img/tasks/demo/shell.jpg)
 
 - 节点名称:一个工作流定义中的节点名称是唯一的。
 - 运行标志:标识这个节点是否能正常调度,如果不需要执行,可以打开禁止执行开关。
diff --git a/docs/zh-cn/1.3.1/user_doc/system-manual.md b/docs/zh-cn/1.3.1/user_doc/system-manual.md
index a0f58b5..8c1c6b4 100644
--- a/docs/zh-cn/1.3.1/user_doc/system-manual.md
+++ b/docs/zh-cn/1.3.1/user_doc/system-manual.md
@@ -37,10 +37,10 @@
     <p align="center">
         <img src="/img/dag0.png" width="80%" />
     </p>  
-  - 工具栏中拖拽<img src="/img/shell.png" width="35"/>到画板中,新增一个Shell任务,如下图所示:
-    <p align="center">
-        <img src="/img/shell_dag.png" width="80%" />
-    </p>  
+  - 工具栏中拖拽 <img src="/img/tasks/icons/shell.png" width="15"/> 到画板中,新增一个Shell任务,如下图所示:
+
+    ![demo-shell-simple](/img/tasks/demo/shell.jpg)
+
   - **添加shell任务的参数设置:**
   1. 填写“节点名称”,“描述”,“脚本”字段;
   1. “运行标志”勾选“正常”,若勾选“禁止执行”,运行工作流不会执行该任务;
@@ -560,11 +560,9 @@ conf/common.properties
 #### 7.1 Shell节点
   > shell节点,在worker执行的时候,会生成一个临时shell脚本,使用租户同名的linux用户执行这个脚本。
   - 点击项目管理-项目名称-工作流定义,点击"创建工作流"按钮,进入DAG编辑页面。
-  - 工具栏中拖动<img src="/img/shell.png" width="35"/>到画板中,如下图所示:
+  - 工具栏中拖动 <img src="/img/tasks/icons/shell.png" width="15"/> 到画板中,如下图所示:
 
-    <p align="center">
-        <img src="/img/shell_dag.png" width="80%" />
-    </p> 
+    ![demo-shell-simple](/img/tasks/demo/shell.jpg)
 
 - 节点名称:一个工作流定义中的节点名称是唯一的。
 - 运行标志:标识这个节点是否能正常调度,如果不需要执行,可以打开禁止执行开关。
diff --git a/docs/zh-cn/1.3.2/user_doc/system-manual.md b/docs/zh-cn/1.3.2/user_doc/system-manual.md
index ff95ad3..179c776 100644
--- a/docs/zh-cn/1.3.2/user_doc/system-manual.md
+++ b/docs/zh-cn/1.3.2/user_doc/system-manual.md
@@ -37,10 +37,8 @@
     <p align="center">
         <img src="/img/dag0.png" width="80%" />
     </p>  
-  - 工具栏中拖拽<img src="/img/shell.png" width="35"/>到画板中,新增一个Shell任务,如下图所示:
-    <p align="center">
-        <img src="/img/shell_dag.png" width="80%" />
-    </p>  
+  - 工具栏中拖拽 <img src="/img/tasks/icons/shell.png" width="15"/> 到画板中,新增一个Shell任务,如下图所示:
+    ![demo-shell-simple](/img/tasks/demo/shell.jpg)
   - **添加shell任务的参数设置:**
   1. 填写“节点名称”,“描述”,“脚本”字段;
   1. “运行标志”勾选“正常”,若勾选“禁止执行”,运行工作流不会执行该任务;
@@ -575,11 +573,9 @@ worker.groups=default,test
 #### 7.1 Shell节点
   > shell节点,在worker执行的时候,会生成一个临时shell脚本,使用租户同名的linux用户执行这个脚本。
   - 点击项目管理-项目名称-工作流定义,点击"创建工作流"按钮,进入DAG编辑页面。
-  - 工具栏中拖动<img src="/img/shell.png" width="35"/>到画板中,如下图所示:
+  - 工具栏中拖动 <img src="/img/tasks/icons/shell.png" width="15"/> 到画板中,如下图所示:
 
-    <p align="center">
-        <img src="/img/shell_dag.png" width="80%" />
-    </p> 
+    ![demo-shell-simple](/img/tasks/demo/shell.jpg)
 
 - 节点名称:一个工作流定义中的节点名称是唯一的。
 - 运行标志:标识这个节点是否能正常调度,如果不需要执行,可以打开禁止执行开关。
diff --git a/docs/zh-cn/1.3.3/user_doc/system-manual.md b/docs/zh-cn/1.3.3/user_doc/system-manual.md
index aac1e37..6b1e415 100644
--- a/docs/zh-cn/1.3.3/user_doc/system-manual.md
+++ b/docs/zh-cn/1.3.3/user_doc/system-manual.md
@@ -37,10 +37,10 @@
     <p align="center">
         <img src="/img/dag0.png" width="100%" />
     </p>  
-  - 工具栏中拖拽<img src="/img/shell.png" width="35"/>到画板中,新增一个Shell任务,如下图所示:
-    <p align="center">
-        <img src="/img/shell_dag.png" width="100%" />
-    </p>  
+  - 工具栏中拖拽 <img src="/img/tasks/icons/shell.png" width="15"/> 到画板中,新增一个Shell任务,如下图所示:
+
+    ![demo-shell-simple](/img/tasks/demo/shell.jpg)
+
   - **添加shell任务的参数设置:**
   1. 填写“节点名称”,“描述”,“脚本”字段;
   1. “运行标志”勾选“正常”,若勾选“禁止执行”,运行工作流不会执行该任务;
@@ -575,11 +575,9 @@ worker.groups=default,test
 #### 7.1 Shell节点
   > shell节点,在worker执行的时候,会生成一个临时shell脚本,使用租户同名的linux用户执行这个脚本。
   - 点击项目管理-项目名称-工作流定义,点击"创建工作流"按钮,进入DAG编辑页面。
-  - 工具栏中拖动<img src="/img/shell.png" width="35"/>到画板中,如下图所示:
+  - 工具栏中拖动 <img src="/img/tasks/icons/shell.png" width="15"/> 到画板中,如下图所示:
 
-    <p align="center">
-        <img src="/img/shell_dag.png" width="100%" />
-    </p> 
+    ![demo-shell-simple](/img/tasks/demo/shell.jpg)
 
 - 节点名称:一个工作流定义中的节点名称是唯一的。
 - 运行标志:标识这个节点是否能正常调度,如果不需要执行,可以打开禁止执行开关。
diff --git a/docs/zh-cn/1.3.4/user_doc/system-manual.md b/docs/zh-cn/1.3.4/user_doc/system-manual.md
index 40b3dd1..84e2eff 100644
--- a/docs/zh-cn/1.3.4/user_doc/system-manual.md
+++ b/docs/zh-cn/1.3.4/user_doc/system-manual.md
@@ -37,10 +37,8 @@
     <p align="center">
         <img src="/img/dag0.png" width="80%" />
     </p>  
-  - 工具栏中拖拽<img src="/img/shell.png" width="35"/>到画板中,新增一个Shell任务,如下图所示:
-    <p align="center">
-        <img src="/img/shell_dag.png" width="80%" />
-    </p>  
+  - 工具栏中拖拽 <img src="/img/tasks/icons/shell.png" width="15"/> 到画板中,新增一个Shell任务,如下图所示:
+    ![demo-shell-simple](/img/tasks/demo/shell.jpg)
   - **添加shell任务的参数设置:**
   1. 填写“节点名称”,“描述”,“脚本”字段;
   1. “运行标志”勾选“正常”,若勾选“禁止执行”,运行工作流不会执行该任务;
@@ -576,11 +574,9 @@ worker.groups=default,test
 #### 7.1 Shell节点
   > shell节点,在worker执行的时候,会生成一个临时shell脚本,使用租户同名的linux用户执行这个脚本。
   - 点击项目管理-项目名称-工作流定义,点击"创建工作流"按钮,进入DAG编辑页面。
-  - 工具栏中拖动<img src="/img/shell.png" width="35"/>到画板中,如下图所示:
+  - 工具栏中拖动 <img src="/img/tasks/icons/shell.png" width="15"/> 到画板中,如下图所示:
 
-    <p align="center">
-        <img src="/img/shell_dag.png" width="80%" />
-    </p> 
+    ![demo-shell-simple](/img/tasks/demo/shell.jpg)
 
 - 节点名称:一个工作流定义中的节点名称是唯一的。
 - 运行标志:标识这个节点是否能正常调度,如果不需要执行,可以打开禁止执行开关。
diff --git a/docs/zh-cn/1.3.5/user_doc/system-manual.md b/docs/zh-cn/1.3.5/user_doc/system-manual.md
index 0ee63d2..0882884 100644
--- a/docs/zh-cn/1.3.5/user_doc/system-manual.md
+++ b/docs/zh-cn/1.3.5/user_doc/system-manual.md
@@ -37,10 +37,8 @@
     <p align="center">
         <img src="/img/dag0.png" width="80%" />
     </p>  
-  - 工具栏中拖拽<img src="/img/shell.png" width="35"/>到画板中,新增一个Shell任务,如下图所示:
-    <p align="center">
-        <img src="/img/shell_dag.png" width="80%" />
-    </p>  
+  - 工具栏中拖拽 <img src="/img/tasks/icons/shell.png" width="15"/> 到画板中,新增一个Shell任务,如下图所示:
+    ![demo-shell-simple](/img/tasks/demo/shell.jpg)
   - **添加shell任务的参数设置:**
   1. 填写“节点名称”,“描述”,“脚本”字段;
   1. “运行标志”勾选“正常”,若勾选“禁止执行”,运行工作流不会执行该任务;
@@ -577,11 +575,9 @@ worker.groups=default,test
 #### 7.1 Shell节点
   > shell节点,在worker执行的时候,会生成一个临时shell脚本,使用租户同名的linux用户执行这个脚本。
   - 点击项目管理-项目名称-工作流定义,点击"创建工作流"按钮,进入DAG编辑页面。
-  - 工具栏中拖动<img src="/img/shell.png" width="35"/>到画板中,如下图所示:
+  - 工具栏中拖动 <img src="/img/tasks/icons/shell.png" width="15"/> 到画板中,如下图所示:
 
-    <p align="center">
-        <img src="/img/shell_dag.png" width="80%" />
-    </p> 
+    ![demo-shell-simple](/img/tasks/demo/shell.jpg)
 
 - 节点名称:一个工作流定义中的节点名称是唯一的。
 - 运行标志:标识这个节点是否能正常调度,如果不需要执行,可以打开禁止执行开关。
diff --git a/docs/zh-cn/1.3.6/user_doc/system-manual.md b/docs/zh-cn/1.3.6/user_doc/system-manual.md
index 51dba80..3f9d3e0 100644
--- a/docs/zh-cn/1.3.6/user_doc/system-manual.md
+++ b/docs/zh-cn/1.3.6/user_doc/system-manual.md
@@ -37,10 +37,8 @@
     <p align="center">
         <img src="/img/dag0.png" width="80%" />
     </p>  
-  - 工具栏中拖拽<img src="/img/shell.png" width="35"/>到画板中,新增一个Shell任务,如下图所示:
-    <p align="center">
-        <img src="/img/shell_dag.png" width="80%" />
-    </p>  
+  - 工具栏中拖拽 <img src="/img/tasks/icons/shell.png" width="15"/> 到画板中,新增一个Shell任务,如下图所示:
+    ![demo-shell-simple](/img/tasks/demo/shell.jpg)
   - **添加shell任务的参数设置:**
   1. 填写“节点名称”,“描述”,“脚本”字段;
   1. “运行标志”勾选“正常”,若勾选“禁止执行”,运行工作流不会执行该任务;
@@ -576,11 +574,9 @@ worker.groups=default,test
 #### 7.1 Shell节点
   > shell节点,在worker执行的时候,会生成一个临时shell脚本,使用租户同名的linux用户执行这个脚本。
   - 点击项目管理-项目名称-工作流定义,点击"创建工作流"按钮,进入DAG编辑页面。
-  - 工具栏中拖动<img src="/img/shell.png" width="35"/>到画板中,如下图所示:
+  - 工具栏中拖动 <img src="/img/tasks/icons/shell.png" width="15"/> 到画板中,如下图所示:
 
-    <p align="center">
-        <img src="/img/shell_dag.png" width="80%" />
-    </p> 
+    ![demo-shell-simple](/img/tasks/demo/shell.jpg)
 
 - 节点名称:一个工作流定义中的节点名称是唯一的。
 - 运行标志:标识这个节点是否能正常调度,如果不需要执行,可以打开禁止执行开关。
diff --git a/docs/zh-cn/1.3.8/user_doc/system-manual.md b/docs/zh-cn/1.3.8/user_doc/system-manual.md
index 4cc1d95..7af6697 100644
--- a/docs/zh-cn/1.3.8/user_doc/system-manual.md
+++ b/docs/zh-cn/1.3.8/user_doc/system-manual.md
@@ -37,10 +37,10 @@
     <p align="center">
         <img src="/img/dag0.png" width="80%" />
     </p>  
-  - 工具栏中拖拽<img src="/img/shell.png" width="35"/>到画板中,新增一个Shell任务,如下图所示:
-    <p align="center">
-        <img src="/img/shell_dag.png" width="80%" />
-    </p>  
+  - 工具栏中拖拽 <img src="/img/tasks/icons/shell.png" width="15"/> 到画板中,新增一个Shell任务,如下图所示:
+
+    ![demo-shell-simple](/img/tasks/demo/shell.jpg)
+
   - **添加shell任务的参数设置:**
   1. 填写“节点名称”,“描述”,“脚本”字段;
   1. “运行标志”勾选“正常”,若勾选“禁止执行”,运行工作流不会执行该任务;
@@ -576,11 +576,9 @@ worker.groups=default,test
 #### 7.1 Shell节点
   > shell节点,在worker执行的时候,会生成一个临时shell脚本,使用租户同名的linux用户执行这个脚本。
   - 点击项目管理-项目名称-工作流定义,点击"创建工作流"按钮,进入DAG编辑页面。
-  - 工具栏中拖动<img src="/img/shell.png" width="35"/>到画板中,如下图所示:
+  - 工具栏中拖动<img src="/img/tasks/icons/shell.png" width="15"/>到画板中,如下图所示:
 
-    <p align="center">
-        <img src="/img/shell_dag.png" width="80%" />
-    </p> 
+    ![demo-shell-simple](/img/tasks/demo/shell.jpg)
 
 - 节点名称:一个工作流定义中的节点名称是唯一的。
 - 运行标志:标识这个节点是否能正常调度,如果不需要执行,可以打开禁止执行开关。
diff --git a/docs/zh-cn/1.3.9/user_doc/system-manual.md b/docs/zh-cn/1.3.9/user_doc/system-manual.md
index 4cc1d95..29adb40 100644
--- a/docs/zh-cn/1.3.9/user_doc/system-manual.md
+++ b/docs/zh-cn/1.3.9/user_doc/system-manual.md
@@ -37,10 +37,8 @@
     <p align="center">
         <img src="/img/dag0.png" width="80%" />
     </p>  
-  - 工具栏中拖拽<img src="/img/shell.png" width="35"/>到画板中,新增一个Shell任务,如下图所示:
-    <p align="center">
-        <img src="/img/shell_dag.png" width="80%" />
-    </p>  
+  - 工具栏中拖拽 <img src="/img/tasks/icons/shell.png" width="15"/> 到画板中,新增一个Shell任务,如下图所示:
+    ![demo-shell-simple](/img/tasks/demo/shell.jpg)
   - **添加shell任务的参数设置:**
   1. 填写“节点名称”,“描述”,“脚本”字段;
   1. “运行标志”勾选“正常”,若勾选“禁止执行”,运行工作流不会执行该任务;
@@ -576,11 +574,9 @@ worker.groups=default,test
 #### 7.1 Shell节点
   > shell节点,在worker执行的时候,会生成一个临时shell脚本,使用租户同名的linux用户执行这个脚本。
   - 点击项目管理-项目名称-工作流定义,点击"创建工作流"按钮,进入DAG编辑页面。
-  - 工具栏中拖动<img src="/img/shell.png" width="35"/>到画板中,如下图所示:
+  - 工具栏中拖动 <img src="/img/tasks/icons/shell.png" width="15"/> 到画板中,如下图所示:
 
-    <p align="center">
-        <img src="/img/shell_dag.png" width="80%" />
-    </p> 
+    ![demo-shell-simple](/img/tasks/demo/shell.jpg)
 
 - 节点名称:一个工作流定义中的节点名称是唯一的。
 - 运行标志:标识这个节点是否能正常调度,如果不需要执行,可以打开禁止执行开关。
diff --git a/docs/zh-cn/2.0.0/user_doc/guide/task/shell.md b/docs/zh-cn/2.0.0/user_doc/guide/task/shell.md
index abe2b95..43e6a28 100644
--- a/docs/zh-cn/2.0.0/user_doc/guide/task/shell.md
+++ b/docs/zh-cn/2.0.0/user_doc/guide/task/shell.md
@@ -1,22 +1,48 @@
-# Shell节点
+# Shell
 
-shell节点,在worker执行的时候,会生成一个临时shell脚本,使用租户同名的linux用户执行这个脚本。
+## 综述
+
+Shell 任务类型,用于创建 Shell 类型的任务并执行一系列的 Shell 脚本。worker 执行该任务的时候,会生成一个临时shell脚本,
+并使用与租户同名的 linux 用户执行这个脚本。
+
+## 创建任务
 
 - 点击项目管理-项目名称-工作流定义,点击"创建工作流"按钮,进入DAG编辑页面。
-- 工具栏中拖动<img src="/img/shell.png" width="35"/>到画板中,如下图所示:
+- 工具栏中拖动 <img src="/img/tasks/icons/shell.png" width="15"/> 到画板中,即可完成创建。
 
-    <p align="center">
-        <img src="/img/shell_dag.png" width="80%" />
-    </p> 
+## 任务参数
 
-- 节点名称:一个工作流定义中的节点名称是唯一的。
+- 任务名称:设置任务的名称。一个工作流定义中的节点名称是唯一的。
 - 运行标志:标识这个节点是否能正常调度,如果不需要执行,可以打开禁止执行开关。
-- 描述信息:描述该节点的功能。
+- 描述:描述该节点的功能。
 - 任务优先级:worker线程数不足时,根据优先级从高到低依次执行,优先级一样时根据先进先出原则执行。
 - Worker分组:任务分配给worker组的机器机执行,选择Default,会随机选择一台worker机执行。
+- 环境名称:配置运行脚本的环境。
 - 失败重试次数:任务失败重新提交的次数,支持下拉和手填。
 - 失败重试间隔:任务失败重新提交任务的时间间隔,支持下拉和手填。
 - 超时告警:勾选超时告警、超时失败,当任务超过"超时时长"后,会发送告警邮件并且任务执行失败.
 - 脚本:用户开发的SHELL程序。
 - 资源:是指脚本中需要调用的资源文件列表,资源中心-文件管理上传或创建的文件。
-- 自定义参数:是SHELL局部的用户自定义参数,会替换脚本中以${变量}的内容。
\ No newline at end of file
+- 自定义参数:是SHELL局部的用户自定义参数,会替换脚本中以${变量}的内容。
+- 前置任务:选择当前任务的前置任务,会将被选择的前置任务设置为当前任务的上游。
+
+## 任务样例
+
+### 简单打印一行文字
+
+该样例模拟了常见的简单任务,这些任务只需要简单的一两行命令就能运行起来。我们以打印一行日志为例,该任务仅会在日志文件中打印一行
+"This is a demo of shell task"
+
+![demo-shell-simple](/img/tasks/demo/shell.jpg)
+
+### 使用自定义参数
+
+该样例模拟了自定义参数任务,为了更方便的复用已有的任务,或者面对动态的需求时,我们会使用变量保证脚本的复用性。本例中,我们先在自定义脚本
+中定义了参数 "param_key",并将他的值设置为 "param_val"。接着在"脚本"中声明了 echo 命令,将参数 "param_key" 打印了出来。当我们保存
+并运行任务后,在日志中会看到将参数 "param_key" 对应的值 "param_val" 打印出来。
+
+![demo-shell-custom-param](/img/tasks/demo/shell_custom_param.jpg)
+
+## 注意事项
+
+无
diff --git a/docs/zh-cn/2.0.0/user_doc/guide/workflow-definition.md b/docs/zh-cn/2.0.0/user_doc/guide/workflow-definition.md
index 3e9c287..e69261f 100644
--- a/docs/zh-cn/2.0.0/user_doc/guide/workflow-definition.md
+++ b/docs/zh-cn/2.0.0/user_doc/guide/workflow-definition.md
@@ -6,10 +6,10 @@
     <p align="center">
         <img src="/img/dag0.png" width="80%" />
     </p>  
-- 工具栏中拖拽<img src="/img/shell.png" width="35"/>到画板中,新增一个Shell任务,如下图所示:
-    <p align="center">
-        <img src="/img/shell_dag.png" width="80%" />
-    </p>  
+- 工具栏中拖拽 <img src="/img/tasks/icons/shell.png" width="15"/> 到画板中,新增一个Shell任务,如下图所示:
+
+    ![demo-shell-simple](/img/tasks/demo/shell.jpg)
+
 - **添加shell任务的参数设置:**
   1. 填写“节点名称”,“描述”,“脚本”字段;
   1. “运行标志”勾选“正常”,若勾选“禁止执行”,运行工作流不会执行该任务;
diff --git a/docs/zh-cn/2.0.1/user_doc/guide/task/shell.md b/docs/zh-cn/2.0.1/user_doc/guide/task/shell.md
index abe2b95..dd896c5 100644
--- a/docs/zh-cn/2.0.1/user_doc/guide/task/shell.md
+++ b/docs/zh-cn/2.0.1/user_doc/guide/task/shell.md
@@ -1,22 +1,48 @@
-# Shell节点
+# Shell
 
-shell节点,在worker执行的时候,会生成一个临时shell脚本,使用租户同名的linux用户执行这个脚本。
+## 综述
+
+Shell 任务类型,用于创建 Shell 类型的任务并执行一系列的 Shell 脚本。worker 执行该任务的时候,会生成一个临时shell脚本,
+并使用与租户同名的 linux 用户执行这个脚本。
+
+## 创建任务
 
 - 点击项目管理-项目名称-工作流定义,点击"创建工作流"按钮,进入DAG编辑页面。
-- 工具栏中拖动<img src="/img/shell.png" width="35"/>到画板中,如下图所示:
+- 工具栏中拖动 <img src="/img/tasks/icons/shell.png" width="15"/> 到画板中,即可完成创建。
 
-    <p align="center">
-        <img src="/img/shell_dag.png" width="80%" />
-    </p> 
+## 任务参数
 
-- 节点名称:一个工作流定义中的节点名称是唯一的。
+- 任务名称:设置任务的名称。一个工作流定义中的节点名称是唯一的。
 - 运行标志:标识这个节点是否能正常调度,如果不需要执行,可以打开禁止执行开关。
-- 描述信息:描述该节点的功能。
+- 描述:描述该节点的功能。
 - 任务优先级:worker线程数不足时,根据优先级从高到低依次执行,优先级一样时根据先进先出原则执行。
 - Worker分组:任务分配给worker组的机器机执行,选择Default,会随机选择一台worker机执行。
+- 环境名称:配置运行脚本的环境。
 - 失败重试次数:任务失败重新提交的次数,支持下拉和手填。
 - 失败重试间隔:任务失败重新提交任务的时间间隔,支持下拉和手填。
 - 超时告警:勾选超时告警、超时失败,当任务超过"超时时长"后,会发送告警邮件并且任务执行失败.
 - 脚本:用户开发的SHELL程序。
 - 资源:是指脚本中需要调用的资源文件列表,资源中心-文件管理上传或创建的文件。
-- 自定义参数:是SHELL局部的用户自定义参数,会替换脚本中以${变量}的内容。
\ No newline at end of file
+- 自定义参数:是SHELL局部的用户自定义参数,会替换脚本中以${变量}的内容。
+- 前置任务:选择当前任务的前置任务,会将被选择的前置任务设置为当前任务的上游。
+
+## 任务样例
+
+### 简单打印一行文字
+
+该样例模拟了常见的简单任务,这些任务只需要简单的一两行命令就能运行起来。我们以打印一行日志为例,该任务仅会在日志文件中打印一行
+"This is a demo of shell task"
+
+![demo-shell-simple](/img/tasks/demo/shell.jpg)
+
+### 使用自定义参数
+
+该样例模拟了自定义参数任务,为了更方便的复用已有的任务,或者面对动态的需求时,我们会使用变量保证脚本的复用性。本例中,我们先在自定义脚本
+中定义了参数 "param_key",并将他的值设置为 "param_val"。接着在"脚本"中声明了 echo 命令,将参数 "param_key" 打印了出来。当我们保存
+并运行任务后,在日志中会看到将参数 "param_key" 对应的值 "param_val" 打印出来。
+
+![demo-shell-custom-param](/img/tasks/demo/shell_custom_param.jpg)
+
+## 注意事项
+
+无
\ No newline at end of file
diff --git a/docs/zh-cn/2.0.1/user_doc/guide/workflow-definition.md b/docs/zh-cn/2.0.1/user_doc/guide/workflow-definition.md
index 3e9c287..e69261f 100644
--- a/docs/zh-cn/2.0.1/user_doc/guide/workflow-definition.md
+++ b/docs/zh-cn/2.0.1/user_doc/guide/workflow-definition.md
@@ -6,10 +6,10 @@
     <p align="center">
         <img src="/img/dag0.png" width="80%" />
     </p>  
-- 工具栏中拖拽<img src="/img/shell.png" width="35"/>到画板中,新增一个Shell任务,如下图所示:
-    <p align="center">
-        <img src="/img/shell_dag.png" width="80%" />
-    </p>  
+- 工具栏中拖拽 <img src="/img/tasks/icons/shell.png" width="15"/> 到画板中,新增一个Shell任务,如下图所示:
+
+    ![demo-shell-simple](/img/tasks/demo/shell.jpg)
+
 - **添加shell任务的参数设置:**
   1. 填写“节点名称”,“描述”,“脚本”字段;
   1. “运行标志”勾选“正常”,若勾选“禁止执行”,运行工作流不会执行该任务;
diff --git a/docs/zh-cn/2.0.2/user_doc/guide/task/shell.md b/docs/zh-cn/2.0.2/user_doc/guide/task/shell.md
index abe2b95..dd896c5 100644
--- a/docs/zh-cn/2.0.2/user_doc/guide/task/shell.md
+++ b/docs/zh-cn/2.0.2/user_doc/guide/task/shell.md
@@ -1,22 +1,48 @@
-# Shell节点
+# Shell
 
-shell节点,在worker执行的时候,会生成一个临时shell脚本,使用租户同名的linux用户执行这个脚本。
+## 综述
+
+Shell 任务类型,用于创建 Shell 类型的任务并执行一系列的 Shell 脚本。worker 执行该任务的时候,会生成一个临时shell脚本,
+并使用与租户同名的 linux 用户执行这个脚本。
+
+## 创建任务
 
 - 点击项目管理-项目名称-工作流定义,点击"创建工作流"按钮,进入DAG编辑页面。
-- 工具栏中拖动<img src="/img/shell.png" width="35"/>到画板中,如下图所示:
+- 工具栏中拖动 <img src="/img/tasks/icons/shell.png" width="15"/> 到画板中,即可完成创建。
 
-    <p align="center">
-        <img src="/img/shell_dag.png" width="80%" />
-    </p> 
+## 任务参数
 
-- 节点名称:一个工作流定义中的节点名称是唯一的。
+- 任务名称:设置任务的名称。一个工作流定义中的节点名称是唯一的。
 - 运行标志:标识这个节点是否能正常调度,如果不需要执行,可以打开禁止执行开关。
-- 描述信息:描述该节点的功能。
+- 描述:描述该节点的功能。
 - 任务优先级:worker线程数不足时,根据优先级从高到低依次执行,优先级一样时根据先进先出原则执行。
 - Worker分组:任务分配给worker组的机器机执行,选择Default,会随机选择一台worker机执行。
+- 环境名称:配置运行脚本的环境。
 - 失败重试次数:任务失败重新提交的次数,支持下拉和手填。
 - 失败重试间隔:任务失败重新提交任务的时间间隔,支持下拉和手填。
 - 超时告警:勾选超时告警、超时失败,当任务超过"超时时长"后,会发送告警邮件并且任务执行失败.
 - 脚本:用户开发的SHELL程序。
 - 资源:是指脚本中需要调用的资源文件列表,资源中心-文件管理上传或创建的文件。
-- 自定义参数:是SHELL局部的用户自定义参数,会替换脚本中以${变量}的内容。
\ No newline at end of file
+- 自定义参数:是SHELL局部的用户自定义参数,会替换脚本中以${变量}的内容。
+- 前置任务:选择当前任务的前置任务,会将被选择的前置任务设置为当前任务的上游。
+
+## 任务样例
+
+### 简单打印一行文字
+
+该样例模拟了常见的简单任务,这些任务只需要简单的一两行命令就能运行起来。我们以打印一行日志为例,该任务仅会在日志文件中打印一行
+"This is a demo of shell task"
+
+![demo-shell-simple](/img/tasks/demo/shell.jpg)
+
+### 使用自定义参数
+
+该样例模拟了自定义参数任务,为了更方便的复用已有的任务,或者面对动态的需求时,我们会使用变量保证脚本的复用性。本例中,我们先在自定义脚本
+中定义了参数 "param_key",并将他的值设置为 "param_val"。接着在"脚本"中声明了 echo 命令,将参数 "param_key" 打印了出来。当我们保存
+并运行任务后,在日志中会看到将参数 "param_key" 对应的值 "param_val" 打印出来。
+
+![demo-shell-custom-param](/img/tasks/demo/shell_custom_param.jpg)
+
+## 注意事项
+
+无
\ No newline at end of file
diff --git a/docs/zh-cn/2.0.2/user_doc/guide/workflow-definition.md b/docs/zh-cn/2.0.2/user_doc/guide/workflow-definition.md
index 3e9c287..e69261f 100644
--- a/docs/zh-cn/2.0.2/user_doc/guide/workflow-definition.md
+++ b/docs/zh-cn/2.0.2/user_doc/guide/workflow-definition.md
@@ -6,10 +6,10 @@
     <p align="center">
         <img src="/img/dag0.png" width="80%" />
     </p>  
-- 工具栏中拖拽<img src="/img/shell.png" width="35"/>到画板中,新增一个Shell任务,如下图所示:
-    <p align="center">
-        <img src="/img/shell_dag.png" width="80%" />
-    </p>  
+- 工具栏中拖拽 <img src="/img/tasks/icons/shell.png" width="15"/> 到画板中,新增一个Shell任务,如下图所示:
+
+    ![demo-shell-simple](/img/tasks/demo/shell.jpg)
+
 - **添加shell任务的参数设置:**
   1. 填写“节点名称”,“描述”,“脚本”字段;
   1. “运行标志”勾选“正常”,若勾选“禁止执行”,运行工作流不会执行该任务;
diff --git a/docs/zh-cn/dev/user_doc/guide/task/shell.md b/docs/zh-cn/dev/user_doc/guide/task/shell.md
index abe2b95..dd896c5 100644
--- a/docs/zh-cn/dev/user_doc/guide/task/shell.md
+++ b/docs/zh-cn/dev/user_doc/guide/task/shell.md
@@ -1,22 +1,48 @@
-# Shell节点
+# Shell
 
-shell节点,在worker执行的时候,会生成一个临时shell脚本,使用租户同名的linux用户执行这个脚本。
+## 综述
+
+Shell 任务类型,用于创建 Shell 类型的任务并执行一系列的 Shell 脚本。worker 执行该任务的时候,会生成一个临时shell脚本,
+并使用与租户同名的 linux 用户执行这个脚本。
+
+## 创建任务
 
 - 点击项目管理-项目名称-工作流定义,点击"创建工作流"按钮,进入DAG编辑页面。
-- 工具栏中拖动<img src="/img/shell.png" width="35"/>到画板中,如下图所示:
+- 工具栏中拖动 <img src="/img/tasks/icons/shell.png" width="15"/> 到画板中,即可完成创建。
 
-    <p align="center">
-        <img src="/img/shell_dag.png" width="80%" />
-    </p> 
+## 任务参数
 
-- 节点名称:一个工作流定义中的节点名称是唯一的。
+- 任务名称:设置任务的名称。一个工作流定义中的节点名称是唯一的。
 - 运行标志:标识这个节点是否能正常调度,如果不需要执行,可以打开禁止执行开关。
-- 描述信息:描述该节点的功能。
+- 描述:描述该节点的功能。
 - 任务优先级:worker线程数不足时,根据优先级从高到低依次执行,优先级一样时根据先进先出原则执行。
 - Worker分组:任务分配给worker组的机器机执行,选择Default,会随机选择一台worker机执行。
+- 环境名称:配置运行脚本的环境。
 - 失败重试次数:任务失败重新提交的次数,支持下拉和手填。
 - 失败重试间隔:任务失败重新提交任务的时间间隔,支持下拉和手填。
 - 超时告警:勾选超时告警、超时失败,当任务超过"超时时长"后,会发送告警邮件并且任务执行失败.
 - 脚本:用户开发的SHELL程序。
 - 资源:是指脚本中需要调用的资源文件列表,资源中心-文件管理上传或创建的文件。
-- 自定义参数:是SHELL局部的用户自定义参数,会替换脚本中以${变量}的内容。
\ No newline at end of file
+- 自定义参数:是SHELL局部的用户自定义参数,会替换脚本中以${变量}的内容。
+- 前置任务:选择当前任务的前置任务,会将被选择的前置任务设置为当前任务的上游。
+
+## 任务样例
+
+### 简单打印一行文字
+
+该样例模拟了常见的简单任务,这些任务只需要简单的一两行命令就能运行起来。我们以打印一行日志为例,该任务仅会在日志文件中打印一行
+"This is a demo of shell task"
+
+![demo-shell-simple](/img/tasks/demo/shell.jpg)
+
+### 使用自定义参数
+
+该样例模拟了自定义参数任务,为了更方便的复用已有的任务,或者面对动态的需求时,我们会使用变量保证脚本的复用性。本例中,我们先在自定义脚本
+中定义了参数 "param_key",并将他的值设置为 "param_val"。接着在"脚本"中声明了 echo 命令,将参数 "param_key" 打印了出来。当我们保存
+并运行任务后,在日志中会看到将参数 "param_key" 对应的值 "param_val" 打印出来。
+
+![demo-shell-custom-param](/img/tasks/demo/shell_custom_param.jpg)
+
+## 注意事项
+
+无
\ No newline at end of file
diff --git a/docs/zh-cn/dev/user_doc/guide/workflow-definition.md b/docs/zh-cn/dev/user_doc/guide/workflow-definition.md
index 3e9c287..3390fed 100644
--- a/docs/zh-cn/dev/user_doc/guide/workflow-definition.md
+++ b/docs/zh-cn/dev/user_doc/guide/workflow-definition.md
@@ -6,10 +6,8 @@
     <p align="center">
         <img src="/img/dag0.png" width="80%" />
     </p>  
-- 工具栏中拖拽<img src="/img/shell.png" width="35"/>到画板中,新增一个Shell任务,如下图所示:
-    <p align="center">
-        <img src="/img/shell_dag.png" width="80%" />
-    </p>  
+- 工具栏中拖拽 <img src="/img/tasks/icons/shell.png" width="15"/> 到画板中,新增一个Shell任务,如下图所示:
+  ![demo-shell-simple](/img/tasks/demo/shell.jpg)
 - **添加shell任务的参数设置:**
   1. 填写“节点名称”,“描述”,“脚本”字段;
   1. “运行标志”勾选“正常”,若勾选“禁止执行”,运行工作流不会执行该任务;
diff --git a/img/shell-en.png b/img/shell-en.png
deleted file mode 100644
index d655d63..0000000
Binary files a/img/shell-en.png and /dev/null differ
diff --git a/img/shell.png b/img/shell.png
deleted file mode 100644
index a000d62..0000000
Binary files a/img/shell.png and /dev/null differ
diff --git a/img/shell_dag.png b/img/shell_dag.png
deleted file mode 100644
index 7e28159..0000000
Binary files a/img/shell_dag.png and /dev/null differ
diff --git a/img/tasks/demo/shell.jpg b/img/tasks/demo/shell.jpg
new file mode 100644
index 0000000..3a01184
Binary files /dev/null and b/img/tasks/demo/shell.jpg differ
diff --git a/img/tasks/demo/shell_custom_param.jpg b/img/tasks/demo/shell_custom_param.jpg
new file mode 100644
index 0000000..c52b0d1
Binary files /dev/null and b/img/tasks/demo/shell_custom_param.jpg differ
diff --git a/img/tasks/icons/shell.png b/img/tasks/icons/shell.png
new file mode 100644
index 0000000..4e40b6e
Binary files /dev/null and b/img/tasks/icons/shell.png differ