Isso é muito importante para mim, nomeando o arquivo / pasta que contém esses caracteres.
Pode ser importante para você, mas você terá que deixar isso de lado e encontrar uma maneira diferente de resolver seu problema.
Esses caracteres não são permitidos pelas chamadas de função do sistema operacional Windows que manipulam nomes de arquivos.
Eles não são especificamente permitidos porque têm outro uso:
- \ - Reservado para uso como separador de caminho e caractere de escape
- / - Reservado para uso como separador de caminho
- : - Reservado para uso como um delimitador de nome de unidade
- * e ? - Reservado para uso como caracteres wildcard
- " - Reservado para uso em citações nomes que contêm espaços
- & lt ;, > e | - Reservado para uso como comando redirecionamento operadores
Você pode, é claro, criar arquivos com nomes que contenham esses caracteres usando um sistema operacional diferente (desde que esse sistema operacional possa ler / gravar em um sistema de arquivos do Windows).
No entanto, você não poderá fazer nada com esses arquivos usando nenhum programa do Windows e eles não entenderão os nomes dos arquivos e gerarão erros.
Nomeando arquivos, caminhos e namespaces
Naming Conventions
The following fundamental rules enable applications to create and process valid names for files and directories, regardless of the file system:
...
Use any character in the current code page for a name, including Unicode characters and characters in the extended character set (128–255), except for the following:
The following reserved characters:
< (less than) > (greater than) : (colon) " (double quote) / (forward slash) \ (backslash) | (vertical bar or pipe) ? (question mark) * (asterisk)
- Integer value zero, sometimes referred to as the ASCII NUL character.
- Characters whose integer representations are in the range from 1 through 31, except for alternate data streams where these characters are allowed. For more information about file streams, see File Streams.
- Any other character that the target file system does not allow.
Origem Nomeando arquivos, caminhos e namespaces
Mas eu realmente quero fazer isso de qualquer maneira.
Instale o cygwin e use touch
.
Eu não testei todas as possibilidades, mas o seguinte trabalho:
touch :
touch \|
touch \"
touch \>
Exemplo de saída:
DavidPostill@Hal /f/test/impossible
$ ll
total 0
-rw-rw-rw-+ 1 DavidPostill None 0 Aug 10 21:03 '"'
-rw-rw-rw-+ 1 DavidPostill None 0 Aug 10 21:02 :
-rw-rw-rw-+ 1 DavidPostill None 0 Aug 10 21:02 '|'
-rw-rw-rw-+ 1 DavidPostill None 0 Aug 10 21:07 '>'
Como você pode ver, eles não são utilizáveis no Windows:
F:\test\impossible>dir
Volume in drive F is Expansion
Volume Serial Number is 3656-BB63
Directory of F:\test\impossible
10/08/2016 21:07 <DIR> .
10/08/2016 21:07 <DIR> ..
10/08/2016 21:03 0
10/08/2016 21:02 0
10/08/2016 21:07 0
10/08/2016 21:02 0
4 File(s) 0 bytes
2 Dir(s) 1,772,601,536,512 bytes free