You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何调试readCreateProcessWithExitCode执行失败的问题?

Haskell readCreateProcessWithExitCode 执行失败排查方案

问题概况

  • 执行代码:
    readProcessWithExitCode "./tlsfSynt.sh" ltlCommandArgs []
    
  • 报错信息:

    tslsynth: ./tlsfSynt.sh: readCreateProcessWithExitCode: posix_spawnp: does not exist (No such file or directory)

  • 已确认当前目录存在该文件,通过getDirectoryContents "."可在目录列表中看到该文件。

排查及解决方法

  • 检查文件执行权限
    即使文件存在,若无可执行权限也会触发该错误。可通过终端执行chmod +x ./tlsfSynt.sh添加权限,或在代码中提前执行权限修改:

    _ <- readProcessWithExitCode "chmod" ["+x", "./tlsfSynt.sh"] []
    
  • 验证脚本shebang有效性
    查看tlsfSynt.sh首行的shebang(如#!/bin/bash),确认系统中存在对应的解释器。若shebang路径错误(比如指定了不存在的解释器路径),需修改为正确路径,或安装缺失的解释器。

  • 确认程序实际工作目录
    代码中使用的相对路径依赖程序的当前工作目录,可能和你预期的目录不一致。先打印当前工作目录确认:

    currentDir <- getCurrentDirectory
    print currentDir
    

    若目录不符,改用脚本的绝对路径执行,或先切换到目标目录:

    setCurrentDirectory "/实际脚本所在目录路径"
    readProcessWithExitCode "./tlsfSynt.sh" ltlCommandArgs []
    
  • 排查文件名匹配问题
    确认文件名完全一致,避免出现扩展名隐藏(如tlsfSynt.sh.txt)或大小写错误(类Unix系统区分大小写)。

内容的提问来源于stack exchange,提问作者Test

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.07 03:52:10