对Shell脚本进行在线开发、调试和执行,开发完成的脚本也可以在作业中执行(请参见开发作业)。
前提条件
- 已新增Shell脚本,请参见新建脚本。
- 已新建主机连接,该主机用于执行Shell脚本,请参见下表。
- 当前用户已锁定该脚本,否则需要通过“抢锁”锁定脚本后才能继续开发脚本。新建或导入脚本后默认被当前用户锁定,详情参见提交版本并解锁章节中的 编辑锁定功能。
操作步骤
- 登录DataArts Studio控制台。选择实例,点击“进入控制台”,选择对应工作空间的“数据开发”模块,进入数据开发页面。
选择数据开发
- 在数据开发主界面的左侧导航栏,选择“数据开发 > 脚本开发”。
- 在脚本目录中,双击脚本名称,进入脚本开发页面。
- 在编辑器上方,配置如下表所示的属性。
Shell脚本属性
参数 | 说明 | 示例 |
---|---|---|
主机连接 | 选择执行Shell脚本的主机。 | - |
参数 | 填写执行Shell脚本时,向脚本传递的参数。多个参数之间使用空格分隔,例如:a b c。此处的“参数”需要在Shell脚本中使用位置变量(如$1,$2,$3)引用,否则配置无效。位置变量由0开始,其中0变量预留用来保存实际脚本的名字,1变量对应脚本的第1个参数,依次类推。如$1、$2、$3分别引用参数a、参数b和参数c。 注意 shell脚本中若引用变量请直接使用args格式,不要使用 {args}格式,否则会导致被作业中同名参数替换。 |
例如参数输入为“a b c”,执行如下shell脚本,执行结果显示为“b” 。 echo $2 |
交互式输入 | 填写交互式参数,即执行Shell脚本的过程中,需要用户输入的交互式信息(例如密码)。 | 例如执行如下交互式shell脚本, 交互参数1、2、3 分别对应 begin、end、exit。 当交互参数输入1时,执行结果显示为“start something”。 当交互参数输入2时,执行结果显示为“stop something”。 当交互参数输入3时,执行结果显示为“exit”。 #!/bin/bash select Actions in "begin" "end" "exit" do case $Actions in "begin") echo "start something" break ;; "end") echo "stop something" break ;; "exit") echo "exit" break ;; *) echo "Ignorant" ;; esac done |
- 在编辑器中编辑Shell语句。为了方便脚本开发,数据开发模块提供了如下能力:
− 脚本编辑器支持使用如下快捷键,以提升脚本开发效率。
- Ctrl + /:注释或解除注释光标所在行或代码块
- Ctrl + S:保存
- Ctrl + Z:撤销
- Ctrl + Y:重做
- Ctrl + F:查找
- Ctrl + Shift + R:替换
- Ctrl + X:剪切,光标未选中时剪切一行
- Alt + 鼠标拖动:列模式编辑,修改一整块内容
- Ctrl + 鼠标点选:多列模式编辑,多行缩进
- Shift + Ctrl + K:删除当前行
- Ctrl + →或Ctrl + ←:向右或向左按单词移动光标
- Ctrl + Home或Ctrl + End:移至当前文件的最前或最后
- Home或End:移至当前行最前或最后
- Ctrl + Shift + L:鼠标双击相同的字符串后,为所有相同的字符串添加光标,实现批量修改
− 支持脚本参数功能,使用方法如下:
a.在Shell语句中直接写入脚本参数名称和参数值。当Shell脚本被作业引用时,如果作业配置的参数名称与Shell脚本的参数名称相同,Shell脚本的参数值将被作业的参数值替换。
脚本示例如下:
a=1
echo ${a}
其中,a是参数名称,只支持英文字母、数字、“-”、“_”、“<”和“>”,最大长度为16字符,且参数名称不允许重名。
b.在编辑器上方配置参数,在执行Shell脚本时,参数会向脚本传递。参数之间使用空格分隔,例如:a b c。此处的“参数”需要在Shell脚本中引用,否则配置无效。
注意
shell脚本中若引用变量请直接使用 args格式,不要使用 {args}格式,否则会导致被作业中同名参数替换。
− 支持设置脚本责任人
单击编辑器右侧的“脚本基本信息”,可设置脚本的责任人和描述信息。
- 在编辑器上方,单击“运行”。Shell语句运行完成后,在编辑器下方可以查看脚本的执行历史和执行结果。
说明对于执行结果支持如下操作:
重命名:可通过双击执行结果页签的名称进行重命名,也可通过右键单击执行结果页签的名称,单击重命名。重命名不能超过16个字符。
可通过右键单击执行结果页签的名称关闭当前页签、关闭左侧页签、关闭右侧页签、关闭其它页签、关闭所有页签。
- 在编辑器上方,单击,保存脚本。
如果脚本是新建且未保存过的,请配置如下表所示的参数。
保存脚本
参数 | 是否必选 | 说明 |
---|---|---|
脚本名称 | 是 | 脚本的名称,只能包含字符:英文字母、数字、中文、中划线、下划线和点号,且长度小于等于128个字符。 |
描述 | 否 | 脚本的描述信息。 |
选择目录 | 是 | 选择脚本所属的目录,默认为根目录。 |
说明如果脚本未保存,重新打开脚本时,可以从本地缓存中恢复脚本内容。