Como eu crio um diretório com um espaço à direita?

2

Estou usando o Windows 7 e preciso, por motivos fora do meu controle, criar um diretório que termine em um único espaço. Ele conterá vários arquivos e subdiretórios.

Eu tentei md e rename , também com patches UNC, mas ele falhou, fornecendo 'sintaxe incorreta' ou, mais frequentemente, simplesmente ignorando o espaço.

Como posso fazer isso?

    
por mafu 15.05.2015 / 14:38

3 respostas

2

cygwin pode

$ 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

ok, claramente funcionou, pois temos 3 diretórios distintos, mas vamos tentar obter algum tipo de prova adicional

$ 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)

Outra

ls oferece algumas opções de formatação, como verical e outras, e. com vírgulas

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

-

$ ls -m
abcde, abcde , abcde

Observe o espaço antes da vírgula porque o espaço está no nome do arquivo. O ',' está formatando. Mas ',' mostra o espaço no nome do arquivo.

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

-

uma demonstração muito clara sem necessidade de olhar para qualquer hex para verificar, is-

$ mkdir 'abcde           '


$ mkdir z


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


$

Outra maneira, como Mafu menciona no comentário, é o Mingw, que possui um pacote Msys que você pode instalar no ming mackage manager, e o msys instala muitos comandos para C:\MinGW\msys.0\bin> , por exemplo. mkdir.exe, e também tem um bash.exe

    
por 15.05.2015 / 18:20
2

Por favor, note que a criação de um arquivo não suportado pelo Windows pode criar uma situação em que você pode ser incapaz de apagá-lo por meios normais.

Inicialize em uma instalação do Linux ou live cd e execute este comando

mkdir "<mountpoint>/dirname"

Você precisará das aspas.

Veja como eliminar

    
por 15.05.2015 / 14:49
0

Para criar um diretório no Windows com um caractere de espaço à direita, exiba um prompt de comando e insira o seguinte:

md "\?\C:\mydirectory "

O diretório deve ser um diretório absoluto (não relativo) e deve ser prefixado com \\? \

Da mesma forma, você pode excluir o diretório com o comando rd

rd "\?\C:\mydirectory "

mas o diretório deve estar vazio antes de excluí-lo com este comando.

    
por 30.03.2018 / 15:11