在GitLab的Shell文件中执行curl命令提示文件或目录不存在
问题解答:curl报错“d_response.json: No such file or directory”与jq无关
- 这个错误和jq完全无关——报错发生在curl命令执行阶段,还未涉及jq处理环节。
- 报错核心原因是curl无法创建或写入
d_response.json文件,常见场景包括:- 当前工作目录不存在:比如脚本执行时的目录被提前删除,或脚本切换目录操作失败
- 当前目录无写入权限:比如以只读权限的用户身份执行,或目录权限设置为不可写
- 修复建议:
- 手动指定绝对路径保存文件,例如将
-o d_response.json改为-o /tmp/d_response.json,避免依赖当前工作目录 - 若需保存到特定目录,提前创建目录:
mkdir -p /指定/目录路径 && curl ... -o /指定/目录路径/d_response.json - 验证当前用户对目标目录的写入权限,可执行
touch test_file && rm test_file测试能否正常创建文件
- 手动指定绝对路径保存文件,例如将
内容的提问来源于stack exchange,提问作者Madan Mohan Mishra
相关产品推荐
相关产品推荐

