第 5 章:理解命令执行与外部环境
以前用终端(命令行窗口)需要背一堆命令。现在你可以让 Codex 用大白话解释命令、提出建议,并在当前任务允许时协助执行;但是否能运行、运行在哪里,取决于当前客户端、项目和授权。
5.1 在 Codex 里运行命令
终端是用文字向电脑下指令的窗口。当前 Codex 任务可能显示命令和输出,也可能要求你确认;不要假定每个账号都有相同的终端入口或权限。即使你不需要背命令,也应先看懂它准备做什么。
最简单的用法
直接在聊天框里跟 Codex 说你想干什么就行:
「帮我看看当前文件夹里有哪些文件。」
如果当前任务允许,它会建议或运行类似 ls 的查看命令,并把结果告诉你。先从“查看、不修改”的命令练习,不要一上来运行安装、删除或系统级命令。
如果你想看具体命令
有些时候,Codex 会把执行的命令和结果一起展示给你。比如:
$ ls -la
总计 24
drwxr-xr-x 5 user staff 160 6月 26 10:00 .
drwxr-xr-x 8 user staff 256 6月 26 09:55 ..
-rw-r--r-- 1 user staff 120 6月 26 10:00 index.html
-rw-r--r-- 1 user staff 340 6月 26 10:00 style.css
-rw-r--r-- 1 user staff 520 6月 26 10:00 README.md
这样你既能知道结果,也能逐渐熟悉常用命令。
常用操作示例
查看磁盘空间:
「帮我看看电脑硬盘还剩多少空间。」
查看当前路径:
「我现在在哪个文件夹?」
查看系统运行时间:
「电脑开机多久了?」
压缩文件:
「帮我把
photos/文件夹打包成一个 zip 文件。」
🧠 小技巧:你不需要关心命令怎么拼写,把需求说清楚就行。Codex 会选最适合的命令来执行。
[截图:Codex 聊天框中自然语言指令和终端执行结果对照]
5.2 长时间任务:先看状态,不假定有“多终端”
有些任务会花较长时间,例如构建项目或读取大量日志。不同界面可能显示后台进度、任务状态或命令输出,但不应把“多个终端会话”当作所有用户固定可用的功能。
同时做几件事
比如你正在:
- 编译一个程序(需要等几分钟)
- 下载一个大文件
- 查看日志输出
你可以对 Codex 说:
「帮我在后台运行
npm run build,然后另开一个终端查看日志文件。」
如果当前界面允许,它可能把这些工作显示为不同任务或输出区域:
- 会话 1:在后台跑构建任务,完成后告诉你
- 会话 2:实时显示日志更新
切换和管理终端
「帮我看看现在哪些终端还在跑。」
Codex 会列出所有活跃的会话:
1. [后台] npm run build → 运行中(已完成30%)
2. [活跃] tail -f log.txt → 活跃中
3. [已完成] curl download → 已结束
你可以先说:
「帮我把第 2 个终端关掉,日志我看完了。」
为什么要用多终端?
- 不用傻等:一个任务在跑,你可以做其他事
- 互不干扰:每个终端都有自己的工作区
- 随时监控:可以同时查看多个进度
5.3 SSH 与文件传输:这是外部环境能力
SSH 是一种远程连接电脑的协议。简单说,就是你在自己电脑上操作公司或云上的另一台电脑。它由操作系统、终端、服务器权限和密钥配置共同决定,不是 Codex 默认自带的远程登录或文件传输服务。
连接远程服务器
如果你的开发机放在公司的服务器上,先由公司管理员或有经验的同事确认 SSH 是否已配置。Codex 可以协助解释连接说明、检查命令草稿或分析报错;不要把服务器地址、密码或私钥发进聊天框。
「帮我用 SSH 连接到
dev-server.example.com,用户名是admin。」
连接应在你确认安全的终端或管理工具中完成。当前 Codex 是否能协助使用该环境,以实际界面、账号和权限提示为准;远程服务器上的动作尤其需要人工复核。
在远程服务器上工作
连接上之后,你的指令就变成了在远程服务器上执行:
「查一下服务器的硬盘使用情况。」
Codex 会在远程服务器上运行命令,然后把结果返回给你。
传输文件
「把本地的
config.json上传到远程服务器的/home/admin/目录。」
或者:
「从远程服务器下载
data/report.pdf到我的下载文件夹。」
[截图:Codex 通过 SSH 连接远程服务器并在其中执行命令的界面]
🧠 小提示:密码、私钥、令牌和服务器配置都属于敏感信息。不要粘贴到聊天框、截图或项目说明中。
5.4 查看命令输出和日志
有时候命令跑完了,但你想回去看之前的输出结果。或者程序出错了,想看日志找原因。
查看历史输出
「帮我看看刚才那个构建命令的输出结果。」
Codex 可以回顾刚才执行的命令和输出。
实时查看日志
如果你的网站正在运行,想看有没有错误:
「帮我实时查看服务器的访问日志,只看最近 50 行。」
Codex 会执行类似 tail -n 50 log.txt 的命令并展示结果。
过滤日志
日志文件可能很长,几万行都是常事。你可以让 Codex 帮你找关键信息:
「从日志里帮我把所有包含"error"的行找出来。」
或者:
「帮我在日志里搜索 '登录失败' 这个关键词,并把上下文也显示出来。」
导出日志
「把错误日志保存到一个叫
errors.txt的文件里,我发给同事看看。」
5.5 命令执行的安全机制
这是非常重要的一节。你可能会担心:让 AI 协助运行命令安全吗? 安全取决于当前任务的权限、命令内容、项目设置和你的审批;不要把任何工具视为自动安全。
第一层:沙箱隔离(Sandbox)
某些任务会在受限环境中运行,或要求你批准额外访问;具体隔离方式和可用权限由当前客户端与工作区设置决定。把它理解成“可能有护栏”,而不是“永远不会出错”。
常见的风险等级可以这样理解(实际选项请以当前界面为准):
| 模式 | 能做什么 | 什么时候用 |
|---|---|---|
| 🔒 只读模式 | 只能看文件,不能修改或删任何东西 | 检查别人的代码、学习用 |
| 📝 项目范围访问 | 可能只允许在当前项目范围内工作 | 适合从小范围任务开始 |
| ⚠️ 更广泛访问 | 可能访问更多文件或网络 | 只在你理解原因时慎重批准 |
不要假定默认权限、网络策略或可访问目录。每次出现授权提示都应重新确认范围。
第二层:审批机制(Approval)
某些操作可能需要你在当前界面确认;是否提示、提示内容和可用范围都以当前权限设置为准:
- 「我想修改
/etc/hosts文件,这个文件在项目外。你同意吗?」 - 「我想访问网络下载一个文件,可以吗?」
你要说「可以」、「同意」或点确认按钮,Codex 才会执行。这个机制叫审批策略,目的是避免意外操作。
第三层:网络访问控制
网络访问、下载和外部连接是否可用,应以当前任务的权限提示为准。即使你批准了网络,也应只批准明确、必要的下载或网站访问。
常见安全场景
场景 1:安全执行
你让 Codex 下载一个依赖包。 ✅ 先查看命令内容和当前权限范围,再决定是否继续。 ✅ 下载前确认来源、目标目录与是否确有必要。
场景 2:误操作防护
你想让 Codex 删除整个项目。 ✅ 先要求列出拟删除文件;你自己核对后再决定是否执行。 ✅ 不要假定删除范围或确认方式,始终以当前权限提示为准。
场景 3:敏感信息保护
你在
.env文件里存了密码。 ✅ 不把.env、密码或密钥当成“天然受保护”;只授予必要范围,并避免在对话中展示敏感内容。
[截图:Codex 请求审批弹窗的界面,显示「请求访问网络」的提示]
本章小结:Codex 可以帮助你理解命令、查看输出和审查技术操作,但终端、远程服务器和权限不是可以想当然的默认能力。先从只读命令开始;遇到 SSH、上传、删除或联网时,由人确认环境和结果。
系统教程,帮你把工具用好,再回到任务中。 浏览任务方案 →