启用--json参数可让codex输出纯json格式,需置于命令末尾;支持管道重定向至文件或用jq提取字段,便于脚本解析与自动化处理。
☞☞☞AI 智能聊天, 问答助手, AI 智能搜索, 多模态理解力帮你轻松跨越从0到1的创作门槛☜☜☜

想让Codex在Linux终端输出结构清晰、可被下游脚本直接解析的JSON格式结果,而不是混杂提示词和装饰符号的默认文本流,必须绕过CLI默认渲染层,直击原始响应体。
启用机器可读JSON输出模式
执行codex命令时添加--json参数,强制CLI跳过所有美化包装,仅输出纯JSON对象。该参数必须置于命令末尾,否则会被解析为模型输入的一部分。
例如调用代码补全:codex complete --prompt "def hello(): return 'world'" 【--json】
不加此参数时,输出包含“✅ 补全成功”等中文提示和ANSI颜色码,Python脚本无法安全loads();加了之后,输出就是标准JSON字符串,首字符必为{或[。
将JSON结果保存到文件而非仅打印到屏幕
方法一:管道重定向 + jq校验后落盘
codex complete --prompt "x=1+2" --json | jq '.' > result.json
这一步会自动格式化并写入文件,但要求系统已安装jq。若jq未安装,执行sudo apt install jq(Debian/Ubuntu)或sudo yum install jq(CentOS/RHEL)。
方法二:直接重定向(无格式化)
codex complete --prompt "fib = lambda n: n if n raw.json
通过 Codex CLI 生成图片,支持尺寸控制和批量模式。依赖:codex (npm)。代理默认启用。用 generate.sh 生成单张,batch_generate.sh 批量生成游戏 UI 素材,gen_size.sh 指定尺寸。所有输出保存至 ~/.codex/generated_images/。
该方式不依赖外部工具,输出为紧凑JSON(无换行缩进),体积更小,适合自动化流水线中作为中间数据传递。注意:文件末尾不会自动换行,某些解析器可能报错,需手动追加echo "" >> raw.json。
从Codex响应中精准提取字段存为独立变量
第一步:用jq提取response字段并去除外层引号
codex chat --prompt "解释TCP三次握手" --json | jq -r '.response' > explanation.txt
第二步:提取model名称用于日志标记
codex chat --prompt "hello" --json | jq -r '.model' | sed 's/^"//; s/"$//' > model_name.txt
第三步:判断是否含错误字段,决定后续流程分支
if codex complete --prompt "invalid code" --json | jq -e '.error' > /dev/null; then echo "failed" > status.log; else echo "ok" > status.log; fi
【jq -e返回非零退出码表示字段不存在,这是Shell条件判断的可靠依据】










