Linux에서 오류 77 EBADFD를 발생시키는 방법

Linux에서 오류 77 EBADFD를 발생시키는 방법

오류 코드 77(예: EBADFD)과 함께 종료되도록 하려면 어떤 빠른 쉘 스크립트, Python 스크립트 또는 C 프로그램을 작성할 수 있습니까? 저는 단순히 77번 출구라고 말하고 싶지 않고, 실제로 오류가 생성되도록 하는 작업을 수행하고 싶습니다.

답변1

EBADFDerrnoLinux에서 특정 시스템 호출을 통해 변수로 반환될 수 있는 오류 코드입니다. 쉘 exit 123이나 C 프로그램에서 사용하는 exit(123)모든 것은 프로그램의 종료 상태를 설정합니다.

이는 동일하지 않으며 일반적으로 프로그램은 시스템 호출의 오류 코드로 종료되지 않고 1프로그램 자체에서 정의한 값과 같은 보다 일반적인 방법으로 종료됩니다. 예를 들어, 명령줄에 지정된 파일에 오류가 있으면 GNU ls는 2를 반환하고, 다른 파일에 오류가 있으면 1을 반환합니다.sox반면, 명령줄 인수에 오류가 있으면 1이 반환되고, 파일에 오류가 있으면 2가 반환됩니다.

그런 경우는 EBADFD별로 흔하지 않은 것 같고 주로 특정 드라이버에 사용되는 것 같은데, 사운드 드라이버가 더 눈에 띄는 사용자인 것 같습니다(이봐). ( EBADF물론 이런 일은 흔한 일이다.)

관련 정보