【问题标题】:insert unknown command to execvp()向 execvp() 插入未知命令
【发布时间】:2011-08-11 16:21:33
【问题描述】:

嗨 如果我将未知命令传递给 execvp,我会在 errno 中收到此错误: “无此文件或目录” 当我应该得到这个错误: “找不到命令”

我怎样才能得到第二个错误?

【问题讨论】:

    标签: c shell errno execvp


    【解决方案1】:

    没有可以从 execvp 返回的“找不到命令”错误。最接近的是 ENOENT,这意味着找不到指定的文件(或其解释器,或所需的动态库)。

    如果你愿意,你的程序可以打印出“command not found”而不是 strerror 返回的文本。

    【讨论】:

      【解决方案2】:

      因为“找不到命令”与标准错误代码不对应(参见例如http://linux.die.net/man/3/errno)。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2020-07-15
        • 1970-01-01
        • 2012-12-27
        • 2015-02-13
        • 2014-03-20
        • 2016-01-16
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多