후행 공백이 있는 디렉토리를 어떻게 생성합니까?

후행 공백이 있는 디렉토리를 어떻게 생성합니까?

저는 Windows 7을 사용하고 있는데 통제할 수 없는 이유로 단일 공백으로 끝나는 디렉터리를 만들어야 합니다. 여기에는 다양한 파일과 하위 디렉터리가 포함됩니다.

mdUNC 경로를 사용하여 및 를 시도했지만 rename'잘못된 구문'을 제공하거나 더 자주 단순히 공백을 무시하여 실패했습니다.

내가 어떻게 해?

답변1

후행 공백 문자를 사용하여 Windows에서 디렉터리를 생성하려면 명령 프롬프트를 열고 다음을 입력합니다.

md "\\?\C:\mydirectory "

디렉터리는 절대(상대 디렉터리가 아님) 디렉터리여야 하며 접두사가 다음과 같아야 합니다.\\?\

마찬가지로 rd 명령을 사용하여 디렉토리를 삭제할 수 있습니다

rd "\\?\C:\mydirectory "

하지만 이 명령을 사용하여 삭제하기 전에 디렉터리는 비어 있어야 합니다.

답변2

시그윈은 할 수 있다

$ mkdir 'abcde'

$ mkdir 'abcde '

$ mkdir 'abcde  '

$ ls -l
total 0
drwxr-xr-x+ 1 user None 0 May 15 17:11 abcde
drwxr-xr-x+ 1 user None 0 May 15 17:11 abcde
drwxr-xr-x+ 1 user None 0 May 15 17:11 abcde

좋습니다. 3개의 서로 다른 디렉토리가 있으므로 확실히 작동했습니다. 하지만 추가 증거를 찾아보겠습니다.

$ echo * | xxd
0000000: 6162 6364 6520 6162 6364 6520 2061 6263  abcde abcde  abc
0000010: 6465 2020 0a                             de  .

6162 6364 65 20<---- that's the dir abcde, and echo * put a space in after as there is another item it lists.

6162 6364 6520 20 <-- that's the dir 'abcde ', and echo * displayed it with a space in as there is another item it lists

61 62636465 2020 0a  <-- that's the dir 'abcde  ', and echo * displayed it followed by new line(0a)

또 다른

ls는 verical 및 기타 쉼표와 같은 일부 형식 지정 옵션을 제공합니다.

--format=WORD
       across -x, commas -m, horizontal -x, long -l, single-column  -1,
       verbose -l, vertical -C

--

$ ls -m
abcde, abcde , abcde

파일 이름에 공백이 있기 때문에 쉼표 앞에 공백이 있는지 확인하십시오. ','는 서식을 지정하는 중입니다. 하지만 ','는 파일 이름에 공백이 있음을 나타냅니다.

$ ls -m | xxd
0000000: 6162 6364 652c 2061 6263 6465 202c 2061  abcde, abcde , a
0000010: 6263 6465 2020 0a                        bcde  .

--

확인하기 위해 16진수를 볼 필요 없이 매우 명확한 데모는-

$ mkdir 'abcde           '


$ mkdir z


$ ls -m
abcde, abcde , abcde  , abcde           , z


$

Mafu가 설명에서 언급한 또 다른 방법은 Ming Mackage 관리자에 설치할 수 있는 Msys 패키지가 있는 Mingw이며, msys는 C:\MinGW\msys\1.0\bin>mkdir.exe에 많은 명령을 설치하고 bash.exe도 포함합니다.

답변3

Windows에서 지원하지 않는 파일을 생성하면 일반적인 방법으로는 해당 파일을 삭제할 수 없는 상황이 발생할 수 있습니다.

Linux 설치 또는 라이브 CD로 부팅한 후 이 명령을 실행하세요.

mkdir "<mountpoint>/dirname"

따옴표가 필요합니다.

삭제하는 방법은 여기를 참고하세요

관련 정보