### 命令执行

批量执行 ssh 主机 shell 脚本。

⚡ 如果只需要保存日志的原始输出则需要修改 `application.yaml` `app.exec-log.append-ansi` 为 `false`

* 重置: 重置全部参数
* 执行: 执行所输入的命令
* 返回: 返回到执行命令页面
* 从模板中选择: 从模板中选择需要执行的命令
* 执行历史: 点击历史命令可以快速填入

### 执行日志

查看批量执行任务日志。

* 执行命令: 跳转到批量执行页面
* 清空: 清空执行日志
* 删除: 删除执行日志
* 重新执行: 重新执行此命令
* 命令: 查看执行时的命令
* 参数: 查看执行时的参数
* 中断: 中断命令执行
* 日志: 查看执行日志 `ctrl + 左键` 点击会用新页面打开
* 下载: 下载执行日志

### 批量上传

将文件批量上传到远程服务器。

* 重置: 重置表单参数
* 返回: 返回到表单页面
* 开始上传: 执行文件上传
* 取消上传: 取消文件上传
* 清空: 清空已选择的文件
* 选择文件: 批量选择上传的文件
* 选择文件夹: 选择上传的文件夹

> 上传路径可以使用内置变量来替换。

| 参数          | 描述    | 参数示例        |
|:------------|:------|-------------|
| ${username} | 用户名   | admin       |
| ${home}     | 用户家目录 | /home/admin |

### 上传任务

查看批量上传任务列表。

* 上传: 跳转到批量上传页面
* 清空: 清空上传任务
* 删除: 删除上传任务
* 详情: 查看上传任务详情
* 取消: 取消文件上传

### 执行模板

用来维护批量执行的命令模板, 支持动态参数, 使用 `@{{ xxx }}` 来替换命令参数。

* 新增: 新增执行模板
* 执行: 打开命令执行框并且带入模板参数
* 修改: 修改执行模板
* 删除: 删除执行模板

### 日志面板快捷键

* 回车: `Enter`
* 全选: `ctrl` `A`
* 复制: `ctrl` `C`
* 搜索: `ctrl` `F`
* 清空: `ctrl` `L`
* 向上滚动一行: `↑`
* 向上滚动一页: `Home`
* 向下滚动一行: `↓`
* 向下滚动一页: `End`

### 命令内置参数

⚡ 使用 `@{{ xxx }}` 来替换命令参数

| 参数              | 描述                         | 参数示例                                          |
|:----------------|:---------------------------|-----------------------------------------------|
| source          | 执行来源 (BATCH/JOB)           | JOB                                           |
| sourceId        | 执行来源id (JOB特有)             | 6                                             |
| seq             | 执行序列 (JOB特有)               | 920                                           |
| userId          | 执行用户id (JOB为0)             | 1                                             |
| username        | 执行用户名 (JOB为system)         | admin                                         |
| execId          | 执行记录id                     | 2000                                          |
| hostId          | 执行主机id                     | 1                                             | 
| hostName        | 执行主机名称                     | server-127.0.0.1                              |
| hostCode        | 执行主机编码                     | server                                        |
| hostAddress     | 执行主机地址                     | 127.0.0.1                                     |
| hostUsername    | 执行主机用户名                    | root                                          |
| osType          | 执行主机系统版本                   | LINUX                                         |
| port            | SSH 端口                     | 22                                            |
| charset         | SSH 编码集                    | UTF-8                                         |
| scriptExec      | 是否使用脚本执行 (0否1是)            | 1                                             |
| scriptPath      | 脚本文件路径                     | /root/orion/orion-visor/script/exec_2000_1.sh |
| uuid            | 生成任务维度 uuid                | 82b20e52-cea9-455b-a0b4-e4e25654e22b          |
| uuidShort       | 生成任务维度 uuid 无 '-'          | 82b20e52cea9455ba0b4e4e25654e22b              |
| hostUuid        | 生成机器维度 uuid                | 2687b09e-1046-4e8d-9cc2-a7e697836b88          |
| hostUuidShort   | 生成机器维度 uuid 无 '-'          | 2687b09e10464e8d9cc2a7e697836b88              |
| timestampMillis | 时间戳毫秒                      | 1715173200848                                 |
| timestamp       | 时间戳                        | 1715173200                                    |
| date            | 执行时间 `yyyy-MM-dd`          | `2024-01-01`                                  |
| datetime        | 执行时间 `yyyy-MM-dd HH:mm:ss` | `2024-01-01 21:00:00`                         |
