질문 : Windows 및 Linux 디렉토리 이름에서 금지 된 문자는 무엇입니까?
/
가 Linux에서 금지라는 것을 알고 있으며 다음은 Windows에서 금지입니다 (내 생각에) *
.
"
/
\
[
]
:
;
|
,
내가 또 무엇을 놓치고 있습니까?
그러나 포괄적 인 가이드와 더블 바이트 문자를 고려한 가이드가 필요합니다. 외부 리소스에 연결하는 것은 괜찮습니다.
먼저 금지 된 문자를 포함 할 수있는 이름을 사용하여 파일 시스템에 디렉토리를 만들어야하므로 해당 문자를 밑줄로 바꿀 계획입니다. 그런 다음이 디렉토리와 그 내용을 zip 파일 (Java 사용)에 작성해야하므로 zip 디렉토리 이름에 대한 추가 조언을 주시면 감사하겠습니다.
답변
금지 된 파일 이름 문자에 대한 "종합 가이드"는 파일 이름과 문자를 예약하기 때문에 Windows에서 작동하지 않습니다. 예, *
"
?
등의 문자는 금지되어 있지만 금지 된 유효한 문자로만 구성된 이름은 무한히 있습니다. 예를 들어 공백과 점은 유효한 파일 이름 문자이지만 해당 문자로만 구성된 이름은 금지됩니다.
Windows는 대문자와 소문자를 구분하지 않으므로 a라는 이름 A
a
이미있는 경우 A라는 폴더를 만들 수 없습니다. PRN
및 CON
과 같은 겉보기에 허용되는 이름 및 기타 많은 이름이 예약되어 허용되지 않습니다. Windows에는 또한 몇 가지 길이 제한이 있습니다. 한 폴더에서 유효한 파일 이름을 다른 폴더로 이동하면 유효하지 않게 될 수 있습니다. 파일 및 폴더 이름 지정 규칙은 Microsoft 문서에 있습니다.
일반적으로 사용자 생성 텍스트를 사용하여 Windows 디렉터리 이름을 만들 수 없습니다. 사용자가 원하는 이름을 지정하도록 허용하려면 A
, AB
, A2
등의 안전한 이름을 만들고 사용자 생성 이름과 해당 경로를 애플리케이션 데이터 파일에 저장하고 애플리케이션에서 경로 매핑을 수행해야합니다. .
사용자 생성 폴더 이름을 반드시 허용해야하는 경우 해당 이름이 유효하지 않은지 확인하는 유일한 방법은 예외를 포착하고 이름이 유효하지 않다고 가정하는 것입니다. 액세스 거부, 오프라인 드라이브 및 드라이브 공간 부족에 대해 throw되는 예외가 잘못된 이름에 대해 throw 될 수있는 예외와 겹치기 때문에이 경우에도 위험이 따릅니다. 당신은 큰 상처를 입힐 수 있습니다.
출처 : https://stackoverflow.com/questions/1976007/what-characters-are-forbidden-in-windows-and-linux-directory-names
'개발관련 > Linux' 카테고리의 다른 글
쉘에서 Linux에서 한 파일을 다른 파일에 추가하는 방법 (0) | 2021.07.02 |
---|---|
Ubuntu Linux에 JDK를 설치하는 방법 (0) | 2021.07.01 |
Linux에서 실행되는 C ++ 코드를 프로파일링 하는 방법 (0) | 2021.06.29 |
Linux에서 echo의 출력 색상을 변경하는 방법 (0) | 2021.06.28 |
스크립트 자체 내에서 Bash 스크립트의 소스 디렉토리를 얻는 방법 (0) | 2021.06.26 |