Mi problema es que no puedo dar el nombre de mi carpeta o archivo con caracteres especiales como \ / : * ? " < > | en sistemas operativos basados en Windows. Esto es muy importante para mí, dar el nombre del archivo/carpeta que contiene este tipo de caracteres.
Ya busqué y remití muchos sitios para este problema, pero todos son inútiles. También leí la página de soporte de Microsoft, sugieren usar otros caracteres. Este es su enlace,https://support.microsoft.com/en-us/kb/177506
Ya probé el botón Alt + número de código ASCII de este tipo de caracteres especiales, desde la tecla del teclado numérico, solo por ejemplo, cambie el nombre del archivo/carpeta y presione Alt+60 (para <caracteres). Aún así, aparece el mensaje de que un nombre de archivo no puede contener ninguno de los siguientes caracteres: \ / : * ? " < > |
Sugiérame una solución adecuada para poder dar el nombre de mi archivo/carpeta con este tipo de caracteres especiales.
Respuesta1
Esto es muy importante para mí, nombrar el archivo/carpeta que contiene estos caracteres.
Puede que sea importante para ti, pero tendrás que dejarlo pasar y encontrar una manera diferente de resolver tu problema.
Estos caracteres no están permitidos por las llamadas a funciones del sistema operativo Windows que manejan nombres de archivos.
Específicamente no están permitidos porque tienen otro uso:
- \- Reservado para su uso como separador de caminos yescaparpersonaje
- /- Reservado para su uso como separador de caminos.
- :- Reservado para su uso como delimitador de nombre de unidad
- *y ?- Reservado para uso comocomodíncaracteres
- "- Reservado para su uso encitanombres que contienen espacios
- <, >y |- Reservado para uso como comandoredirecciónoperadores
Por supuesto, puede crear archivos con nombres que contengan estos caracteres utilizando un sistema operativo diferente (siempre que ese sistema operativo pueda leer/escribir un sistema de archivos de Windows).
Sin embargo, no podrá hacer nada con esos archivos utilizando ningún programa de Windows, no entenderán los nombres de los archivos y generarán errores.
Nombrar archivos, rutas y espacios de nombres
Convenciones de nombres
Las siguientes reglas fundamentales permiten que las aplicaciones creen y procesen nombres válidos para archivos y directorios, independientemente del sistema de archivos:
...
Utilice cualquier carácter de la página de códigos actual para un nombre, incluidos los caracteres Unicode y los caracteres del juego de caracteres extendido (128–255), excepto lo siguiente:
Los siguientes caracteres reservados:
< (less than) > (greater than) : (colon) " (double quote) / (forward slash) \ (backslash) | (vertical bar or pipe) ? (question mark) * (asterisk)
- Valor entero cero, a veces denominado carácter ASCII NUL.
- Caracteres cuyas representaciones enteras están en el rango de 1 a 31, excepto para flujos de datos alternativos donde se permiten estos caracteres. Para obtener más información sobre secuencias de archivos, consulte Secuencias de archivos.
- Cualquier otro carácter que el sistema de archivos de destino no permita.
FuenteNombrar archivos, rutas y espacios de nombres
Pero realmente quiero hacer esto de todos modos.
Instalarcygwiny use touch
.
No he probado todas las posibilidades, pero el siguiente trabajo:
touch :
touch \|
touch \"
touch \>
Salida de ejemplo:
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 puede ver, no se pueden utilizar en 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
Respuesta2
Crea tu propio conjunto de fuentes. Reemplaza algunos de los personajes que no uses con las imágenes de los personajes reservados.
Respuesta3
En Windows, no puedes crear archivos con esos caracteres. No hay solución, estos caracteres están prohibidos por la API de Win32.
Win32 es un subconjunto del espacio de nombres POSIX y no distingue entre mayúsculas y minúsculas. Utiliza todos los caracteres Unicode, excepto: '"' '*' '/' ':' '<' '>' '?' '\' '|' NB Los nombres no pueden terminar con punto '.' o espacio ''.
--http://dubeyko.com/development/FileSystems/NTFS/ntfsdoc.pdf