내 경험에 따르면 빈 문자열 파일 이름으로 작업을 시도하면 파일을 찾을 수 없습니다( ENOENT
include ls -ld ''
또는 ext4). 하지만 ext4 touch ''
만 mkdir ''
시도할 수 있습니다.
제가 보기에는 이것이 논리적인 것처럼 보이지만 Posix에 이를 금지하는 것이 있습니까?
답변1
이것Unix 사양의 3.170 포인트파일 이름을 비워둘 수 없도록 지정합니다.
파일 이름을 지정하는 데 사용되는 1부터 {NAME_MAX}까지의 바이트 시퀀스입니다. 이름을 구성하는 바이트에는 <NUL> 또는 <slash> 문자가 포함될 수 없습니다.
따라서 빈 파일 이름에 대해 작업을 시도하면 오류가 발생합니다. 문자열을 조작하기 전에 문자열이 비어 있는지 테스트하는 것이 좋습니다.