如何知道 Linux 中的"errno"是什么意思?
linuxoperating systemopen source
errno 是一个值,当您运行的命令返回错误调用值时,您会得到这个值。有一个头文件定义了整型变量 errno,当系统调用和一些库函数发生错误时,会设置该变量,以便让开发人员知道哪里出了问题。
简单来说,"errno"是操作系统错误的症状。通常由失败的操作系统调用产生。
在 UNIX 系统中,errno 用大写字母表示。
示例
EPERM ENOENT ESRCH EINTR EIO ENXIO
以上示例中提到了一些格式化的 errno 符号,它们具有不同的值和含义。
虽然大多数基于 Linux 的系统都预装了 errno 工具,但您仍然可以借助以下命令下载该工具。
适用于 Ubuntu/Fedora
sudo apt-get install errno
适用于 CentOS
yum install errno
安装 errno 工具后,我们可以使用以下命令列出所有 errno 符号及其含义。
errno -l
输出
1 EPERM Operation not permitted 2 ENOENT No such file or directory 3 ESRCH No such process 4 EINTR Interrupted system call 5 EIO Input/output error 6 ENXIO No such device or address 7 E2BIG Argument list too long 8 ENOEXEC Exec format error 9 EBADF Bad file descriptor 10 ECHILD No child processes
需要注意的是,上述输出中包含超过 130 条记录,我仅列出了前 10 条。
如我们所见,每个 errno 都附带了描述信息。借助上述输出,我们可以轻松确定 errno 的实际含义。
另一种更简单的方法是直接打印编号的 errno,而不是打印整个表格。
命令
errno 2
输出
No such file or directory
相关文章
有用资源
linux 参考教程 - 该教程包含有关 linux 的更多信息:https://www.cainiaomax.com/linux/

