### 如何不记录执行命令

1. 临时禁用历史记录

在执行敏感操作之前，你可以临时修改或禁用 Shell 记录机制：

方法 | 命令示例 | 效果和原理
--- | --- | ---
清除环境变量 | `unset HISTFILE` | 临时移除 历史文件路径变量。Shell 将无法找到写入历史记录的文件，操作期间的命令不会被记录
清空历史缓冲区 | `history -c` | 清除当前 Shell 会话 内存中 的历史记录缓冲区。在会话结束前执行可确保本次命令不写入文件
设置历史记录大小为零 | `export HISTSIZE=0` | 将 Shell 内存中可存储的历史命令数量设置为 `0`。如果执行此操作，当前会话中的命令将不会被记录
组合使用（推荐） | `export HISTFILE=/dev/null` | 将历史文件重定向到 `/dev/null`（黑洞文件）。这样，所有的历史记录输出都会被丢弃，不会写入任何可追踪的文件

操作流程：

1. 进入 Shell 后执行：`export HISTFILE=/dev/null`
2. 执行你的权限维持命令（例如：植入后门、修改配置）
3. 操作完成后，退出 Shell 或执行 `unset HISTFILE` 恢复正常环境

2. 使用空格或特殊字符

Bash Shell 默认有一个配置变量 `HISTCONTROL`。如果它被设置为 `ignorespace`（或包含该值，这也是许多发行版的默认设置），那么在命令前面加一个空格，该命令就不会被写入历史文件

- 执行示例：

      # 注意，这里的每个命令前都有一个空格
       ls -la
       export PATH=/tmp:$PATH

- 注意： 如果 `HISTCONTROL` 被设置为 `ignoreboth`，则包含空格和重复的命令都会被忽略