我们都知道*NIXC异常处理中广泛使用errno整型变量,它记录了最新的错误码。通过判断错误码的值,进行不同的错误处理,是C语言中典型的异常处理方式。它的错误名称,如EAGAIN、EWOULDBLOCK等,都是由宏定义的,头文件为errno.h;strerror可以输出错误码对应的描述。如果我们想知道错误名称对应的错误码的值,只需要简单的print("%d",EAGAIN);知道;如果我们想知道错误代码的描述,调用strerror。但是毕竟写程序比较不方便。有没有现成的工具可以帮助我们做到这一点?Linux有一个errno命令行程序可以轻松解决上述问题,还可以提供更丰富的功能。它可以通过apt-getinstallmoreutils安装在Debian上。这个包里面有很多命令程序,大家有时间可以自己挖掘一下。功能说明errno中的程序选项很少,可以通过manerrno在一屏中展开。主要功能如下:通过错误名称查看错误代码和错误描述$errnoEWOULDBLOCKEWOULDBLOCK11资源暂时不可用通过错误代码查看错误名称和错误描述$errno11EAGAIN11资源暂时不可用列出所有errno变量所有错误情况使用errno-l或errno-ls通过错误描述里的关键字(大写不敏感)查询对应的错误情况$errno-ssupportEPROTONOSUPPORT93不支持协议ESOCKTNOSUPPORT94不支持套接字类型EOPNOTSUPPORT9不支持协议family6FNOTSUPPORT95不支持操作协议不支持地址族ENOTSUP95不支持操作请关注我的公众号。
