널 장치
"오늘의AI위키"의 AI를 통해 더욱 풍부하고 폭넓은 지식 경험을 누리세요.
1. 개요
`/dev/null`은 Version 5 Unix에서 처음 소개된 특수 파일로, 사용자의 의도하지 않은 출력 스트림을 버리거나 입력 스트림을 위해 빈 파일 역할을 한다. 널 장치는 리다이렉션을 통해 사용되며, 유닉스 및 유닉스 계열 운영체제에서 표준 출력이나 표준 에러 출력을 `/dev/null`로 리다이렉션하여 메시지 출력을 제어하는 데 활용된다. CP/M, MS-DOS, Windows 등 다른 운영 체제에서는 `NUL:` 또는 `NUL`과 같은 유사한 기능을 제공한다. 또한, `/dev/null`은 프로그래머들 사이에서 기술적인 전문 용어와 비유의 소재로 사용되며, 컴퓨터 문화에서 유머와 농담의 대상이 되기도 한다.
더 읽어볼만한 페이지
- 장치 파일 - /dev/random
/dev/random은 리눅스 커널에서 제공하는 난수 장치 파일로, 안전한 난수 생성을 위해 사용되며, 엔트로피 풀이 비어있을 경우 블로킹되는 특징을 가진다. - 장치 파일 - /dev/zero
`/dev/zero`는 유닉스 계열 운영체제에서 읽기 시 널 문자를 반환하고 쓰기 시 무시되는 특수한 장치 파일로, 데이터 초기화나 특정 크기의 파일 생성 등에 사용되며 SunOS 4.0에서 처음 도입되었다. - 컴퓨터 유머 - 자곤 파일
자곤 파일은 해커 문화의 속어, 은어, 유머를 모아 놓은 문서이자 사전으로, 라파엘 핀켈에 의해 처음 만들어진 후 여러 해커들에 의해 확장되었으며, 에릭 레이먼드가 편집한 《새로운 해커 사전》은 해커 문화와 기술 분야에 큰 영향을 미쳤다. - 컴퓨터 유머 - Garbage in, garbage out
Garbage in, garbage out(GIGO)는 컴퓨터가 잘못된 입력을 받으면 잘못된 출력을 낸다는 개념으로, 1957년 윌리엄 D. 멜린이 처음 사용했으며, 디지털 파일 품질, 인간의 의사 결정, 정보의 신뢰성 등 다양한 분야에 적용된다. - 유닉스 파일 시스템 기술 - 아이노드
아이노드는 파일 시스템에서 파일의 메타데이터를 저장하는 자료 구조이며, 파일 소유자, 접근 권한, 파일 크기 등의 정보를 포함하고, 파일 시스템 드라이버가 파일 정보에 접근하도록 돕는다. - 유닉스 파일 시스템 기술 - /dev/zero
`/dev/zero`는 유닉스 계열 운영체제에서 읽기 시 널 문자를 반환하고 쓰기 시 무시되는 특수한 장치 파일로, 데이터 초기화나 특정 크기의 파일 생성 등에 사용되며 SunOS 4.0에서 처음 도입되었다.
널 장치 | |
---|---|
장치 정보 | |
종류 | 특수 파일 |
설명 | 모든 쓰기 작업을 무시하고 읽을 때 EOF (파일 끝)을 생성하는 장치 파일 |
별칭 | 비트 버킷 (bit bucket) |
사용법 | |
목적 | 출력 폐기 또는 입력 차단 |
리디렉션 | 오류 메시지 리디렉션에 유용 |
시스템별 정보 | |
유닉스 계열 | /dev/null |
DOS, 윈도우 | NUL: 또는 nul |
OpenVMS | NL: |
AmigaOS | NIL: |
PowerShell | $null |
2. 역사
/dev/null영어은 Version 4 Unix에서 빈 정규 파일로 설명되어 있다.[7]
널 장치는 일반적으로 프로세스의 원하지 않는 출력 스트림을 버리거나 입력 스트림을 위해 비어있는 파일의 역할을 하기 위해 사용된다. 리다이렉션을 통해 수행되는 것이 보통이다.
CP/M(및 후의 MS-DOS 및 Windows)에서 이와 동등한 장치는 `NUL:` 또는 `NUL` ('''NUL 장치'''[14])이다. 예를 들어 `PAUSE>NUL`과 같이 출력을 NUL로 향하게 함으로써 사용자의 키 입력을 기다리면서 화면에는 아무것도 표시하지 않게 할 수 있었다. Amiga에서는 장치명이 `NIL:`이었다. Windows NT 및 그 이후의 Windows에서는 내부적으로 `DeviceNull`이라는 이름을 사용하며, DOS의 `NUL`은 해당 장치에 대한 소프트 링크이다. OpenVMS에서는 `NL:`이라는 이름을 사용한다.
/dev/null영어은 유닉스 프로그래머들 사이에서 기술적인 전문 용어나 비유로 자주 사용된다. 예를 들어, "불만을 /dev/null영어로 보내세요"는 "불만을 보내지 마세요"라는 의미이다.[9] 가상의 인물 이름인 "데이브 (또는 데빈) 널"도 이와 유사하게 사용된다.[10]
Version 5 Unix 매뉴얼은 현대적 의미의 /dev/null영어 장치를 설명한다.[8]
3. 사용법
/dev/null영어은 특수 파일의 하나로, 디렉터리가 아니기 때문에 유닉스의 mv 명령을 이용하여 특정 파일이나 디렉토리를 해당 널 장치 파일로 이동할 수 없다. 유닉스에서 파일을 삭제하는 적절한 방법은 rm 명령이다. 널 장치는 일반적으로 프로세스의 불필요한 출력 스트림을 폐기하거나 입력 스트림을 위한 편리한 빈 파일로 사용된다. 이것은 일반적으로 리디렉션을 통해 수행된다.[2] 예를 들어, tar -c -f /dev/null "example directory"
는 TAR 파일 보관 유틸리티를 드라이 런하여 오류가 발생하는지 확인하지만 파일을 쓰지 않도록 하는 데 사용할 수 있다.[2]
/dev/null영어 장치는 특수 파일이며 디렉토리가 아니므로 Unix mv
명령을 사용하여 전체 파일이나 디렉토리를 널 장치로 옮길 수 없다.[3]
/dev/null영어은 일반적으로 프로세스의 불필요한 입출력 스트림을 버리는 데 사용하거나, 입출력 스트림을 위한 빈 파일로 사용한다. 이것은 일반적으로 리다이렉션에 의해 수행된다. 프로그래머, 특히 유닉스 계열 프로그래머 사이에서는 '''비트 버킷'''(bit bucket) 또는 '''블랙홀'''(black hole) 등으로도 불린다.[4]
UNIX 및 유닉스 계열 운영체제의 소프트웨어는 동작 시 표준 출력이나 표준 에러 출력에 동작 상황, 오류, 경고를 알리는 메시지를 출력하는 경우가 있다. 이것들은 기본적으로 화면에 표시되며, 크론 데몬으로 자동 실행된 경우에는 출력된 메시지가 이메일로 사용자에게 전송되기도 한다. 셸 스크립트 등에서도 이러한 메시지 출력이 방해가 될 수 있다. 소프트웨어에 따라서는, 명령줄 옵션 등으로 이러한 메시지를 출력하지 않도록 할 수 있는 것도 있지만, 불가능한 경우도 있다.[5]
이러한 경우, 소프트웨어가 표준 출력이나 표준 에러 출력에 출력하는 메시지를 /dev/null영어로 리다이렉션하도록 미리 지정해두면, 이를 회피할 수 있다.[5]
4. 다른 운영 체제에서의 동등한 기능
5. 컴퓨터 문화에서의 참조
기술적인 농담 소재로도 사용되는데, 예를 들어 시스템의 /dev/null영어이 이미 98% 찼다고 사용자에게 경고하는 식이다.[12] 1995년 만우절에 발행된 독일 잡지 c't는 내부에서 빛나는 발광 다이오드의 깜빡임으로 들어오는 데이터를 엔트로피로 효율적으로 처리하는 향상된 /dev/null영어 칩에 대해 보도했다.
5. 1. 한국에서의 인식
한국에서 널 장치는 주로 IT 전문가들이 사용하는 기술적인 전문 용어나 비유로 활용된다. 예를 들어 "불만을 `/dev/null`로 보내세요"는 불만을 받지 않겠다는 의미이고, "내 메일은 `/dev/null`에 보관되었어요"는 메일이 삭제되었다는 뜻이며, "`/dev/null`로 리디렉션하세요"는 "꺼져 주세요"라는 유머러스한 표현이다.[9]
널 장치는 기술적인 농담 소재로도 사용되는데, 시스템의 `/dev/null`이 98% 찼다는 경고 메시지를 띄우는 식이다. 1995년 독일 잡지 c't는 만우절 기사에서 들어오는 데이터를 LED 깜빡임으로 변환하는 `/dev/null` 칩을 소개하기도 했다.[12]
참조
[1]
웹사이트
Redirecting Error Messages from Command Prompt: STDERR/STDOUT
https://support.micr[...]
2020-03-06
[2]
서적
The AmigaDOS Manual
https://archive.org/[...]
Bantam Books
1986
[3]
웹사이트
OpenVMS Programming Concepts Manual
http://h30266.www3.h[...]
2020-03-06
[4]
웹사이트
about_Automatic_Variables - PowerShell
2020-03-06
[5]
웹사이트
Single Unix Specification Section 10.1: Directory Structure and Files
http://www.opengroup[...]
The Open Group
2012-11-29
[6]
웹사이트
bit bucket
http://catb.org/esr/[...]
2013-12-27
[7]
서적
UNIX Programmer's Manual, Fourth Edition
http://ftp.okass.net[...]
Bell Telephone Laboratories, Inc.
1973-11
[8]
서적
UNIX Programmer's Manual, Fifth Edition
http://ftp.okass.net[...]
Bell Telephone Laboratories, Incorporated
1974-06
[9]
웹사이트
Dev-Team Blog - Donations to /dev/null
http://blog.iphone-d[...]
2015-09-07
[10]
서적
Spam Wars: Our Last Best Chance to Defeat Spammers, Scammers, and Hackers
https://books.google[...]
SelectBooks
[11]
웹사이트
Image: unixad.jpg, (1094 × 720 px)
http://www4.macnn.co[...]
2015-09-02
[12]
웹사이트
The FreeBSD Funnies
http://docs.freebsd.[...]
Freebsd.org
2012-11-28
[13]
간행물
Dev Null Microjunglizm
https://www.newyorke[...]
2024-01-24
[14]
웹사이트
SHELL Redirected to NUL Device Suppresses MS-DOS Message
http://support.micro[...]
2013-10-06
[15]
웹인용
Single Unix Specification Section 10.1: Directory Structure and Files
http://www.opengroup[...]
The Open Group
2012-11-29
[16]
웹인용
bit bucket
http://catb.org/esr/[...]
2013-12-27
본 사이트는 AI가 위키백과와 뉴스 기사,정부 간행물,학술 논문등을 바탕으로 정보를 가공하여 제공하는 백과사전형 서비스입니다.
모든 문서는 AI에 의해 자동 생성되며, CC BY-SA 4.0 라이선스에 따라 이용할 수 있습니다.
하지만, 위키백과나 뉴스 기사 자체에 오류, 부정확한 정보, 또는 가짜 뉴스가 포함될 수 있으며, AI는 이러한 내용을 완벽하게 걸러내지 못할 수 있습니다.
따라서 제공되는 정보에 일부 오류나 편향이 있을 수 있으므로, 중요한 정보는 반드시 다른 출처를 통해 교차 검증하시기 바랍니다.
문의하기 : help@durumis.com