Tengo una canción que Windows no puede reproducir porque hay un signo de interrogación en el nombre del archivo.
"Where Have All the Cowboys Gone?.ogg" // as an example
Así que trato de cambiarle el nombre y Windows se queja si lo intento en Explorer o desde el símbolo del sistema.
El error que obtengo al intentar copiar, renombrar o mover es:
La sintaxis de nombre de archivo, nombre de directorio o etiqueta de volumen es incorrecta
¿Hay alguna forma de Windows de forzar un cambio de nombre en este caso?
Actualizar
Estaré atento a esta pregunta, pero después de 13 respuestas y muchos intentos (aparte de las soluciones de terceros) parece que Windows no puede hacer esto (o al menos mi Windows no puede, sin nombres cortos). Así que acepto la respuesta, que era mi solución original de todos modos de usar Linux. Sería bueno ver que Windows maneje esto de alguna manera, así que no te detengas solo porque he aceptado esta respuesta, ¡la pregunta sigue en pie!
fuente
Respuestas:
Toma un live-cd de linux y úsalo.
fuente
¿Has intentado usar la versión corta de nombres de archivos de su nombre? P.ej
Si es el único archivo en la carpeta actual que comienza con las primeras letras, use las primeras 6 letras del nombre (ignorando espacios) seguido de una tilde (~) y luego un 1.
fuente
Como verá, el resultado fue que chkdsk realmente eliminó los archivos por mí. Entonces, si desea conservar los archivos, no sé qué hacer, pero esto eliminará los archivos con seguridad.
Resultados / Registro de Cmd:
fuente
chkdsk
a veces arreglará nombres de archivo inválidos. Recibirá un mensaje sobre la eliminación del archivo porque todos los nombres de archivo no son válidos y luego recuperará un archivo perdido. Luego puede encontrar el archivo enC:\found.000\file0000.chk
. Esta es una forma efectiva de eliminar los archivos problemáticos, pero no es la mejor manera si desea conservarlos.fuente
\found.000
.La forma en que eliminé el terco archivo fue abriendo 7zip, encontrando el archivo y renombrándolo a través de 7zip. La mía era una canción que tenía un espacio al final del archivo.
fuente
Intente especificar la ruta UNC (consulte Nombrar archivos, rutas y espacios de nombres ). Esto evita todo tipo de restricciones. Lo harías usando la
\\?\
sintaxis.Ejemplo, si su archivo estaba en su escritorio (y su unidad de Windows es C :), puede hacer
Nota: No puede usar rutas relativas con esta sintaxis; Debe especificar la ruta completa. Y no funciona con el
ren
comando, pero funciona concopy
ymove
.fuente
\\?\
simplemente omite el procesamiento de la ruta del archivo en la biblioteca de tiempo de ejecución en modo usuario. No permite abrir nombres de archivos que contengan los 5 caracteres comodín (*? "<>), Otros caracteres reservados (/ |: \) o caracteres de control.\n
. No me pregunte cómo lo creé (bueno, estoy tratando de ver si puede crear varios archivos con el mismo nombre en Windows). Explorer, FreeCommander no pudo eliminarlo pero\\?\C:\...
sí.Usa Recuva . Está destinado principalmente a recuperar archivos eliminados, pero también tiene una opción para incluir archivos no eliminados en su análisis.
Después de iniciar Recuva, rechace el asistente y seleccione el disco correcto. Luego vaya a Opciones, busque y marque la opción "buscar archivos no eliminados" e inicie el análisis. Después de un tiempo, mostrará todos los archivos en el disco (ya sean eliminados o no). Encuentre sus archivos con nombres no válidos (los nombres ya están fijos en la vista), selecciónelos, haga clic con el botón derecho y guárdelos ("recupere") en alguna parte.
Lo acabo de hacer (en Windows XP).
fuente
/n
que 7-zip no pudo manipular.La herramienta de Microsoft DISKEDIT.EXE es una herramienta de bajo nivel para leer y escribir directamente datos de disco sin formato. Debería poder cargar el clúster que contiene la entrada de directorio para este archivo y simplemente cambiar el '?' Ofensivo carácter a algo inocuo y escribirlo de nuevo en el disco.
Tengo entendido que la herramienta de disco de Microsoft (no la herramienta Norton Utilities con el mismo nombre, que es solo para volúmenes FAT) se vio por última vez en Windows 2000 SP4. Pero hay un enlace que se puede encontrar aquí .
Para localizar el clúster correcto, puede descargar una versión de prueba de DiskExplorer para NTFS .
Comenzaría con Archivo-> Unidad ... para abrir la unidad que contiene este archivo defectuoso. Seleccione Ir a -> Directorio raíz para obtener una vista de directorio. Navegue al directorio que contiene su archivo incorrecto utilizando los enlaces MFT #. Cuando llegues allí, la parte superior de la ventana dirá algo como "MFT # x12345 DIR: 'dirname', ... bla, bla, bla ... comenzando en el clúster x9302AE , ... bla, bla, bla"
Ahora pase a Microsoft diskedit. Primero haga Archivo-> Abrir ... y especifique el Nombre del volumen C: (si el archivo está en su unidad C:). Deje el Nombre del archivo de volumen en blanco. Tome ese número de clúster inicial e ingréselo en diskedit en Leer-> Clústeres NTFS ...-> Clúster inicial (ingréselo como un número hexadecimal).
Ahora use las teclas de flecha para desplazarse hacia abajo hasta el nombre de archivo incorrecto. Está en unicode, por lo que buscará algo como "Dónde .Tiene .Todos .los .Vaqueros. ¿Se ha ido? ... ogg" Coloque el cursor sobre el carácter "3F" malo y escriba algo seguro, como 5F (' _ '). Elija Write-> It para volver a escribirlo en el disco.
Hay otro lugar para golpear (no estoy seguro si uno o ambos son necesarios). Ahora, de vuelta en DiskExplorer, haga clic en el # de Mft para el archivo incorrecto. Obtendrá una pantalla con un árbol a la izquierda que dice "estructuras". Haga clic en "Atributos" en el árbol. Le mostrará una lista de atributos, uno de los cuales será algo así como $ 30 ... $ FILE_NAME. Entonces, $ 30 tiene el nombre del archivo. Haga clic en el nodo Cuerpo debajo del nodo $ 30 en el árbol Estructuras. Seleccione el menú Ver-> como Hex. Varias líneas hacia abajo, debería ver el nombre de archivo nuevamente. Donde .Have .. etc. En el lado izquierdo de la pantalla, verá la columna Sector, que muestra qué sector del disco está viendo.
De vuelta sobre el disco. Lea-> Sectores ... e ingrese el número de sector de DiskExplorer. Como antes, desplácese hacia abajo y reemplace el carácter "3F" con el mismo carácter que hizo anteriormente. Elija Write-> It para escribirlo en el disco.
Hice todo esto, y las herramientas me dicen que he cambiado el personaje, pero el explorador no. El directorio debe almacenarse en caché en alguna parte. Después de reiniciar, el cambio se hace visible.
fuente
Intente utilizar una herramienta de terceros como la herramienta Ken Rename :
o Rename Master .
Aquí hay una lista de herramientas para renombrar archivos .
Los probaría yo mismo, pero estoy ejecutando Windows Vista de 64 bits; El manejo del archivo puede ser diferente.
Si esas herramientas fallan, es posible que desee probar Windows PowerShell . Consulte Cambiar el nombre de archivos en el blog de Windows PowerShell .
fuente
¿Has intentado moverlo a un archivo con el nombre correcto?
fuente
copy
comando.?
o*
o<
o>
o:
en el nombre, ycopy
-ing simplemente funcionó? (Simplemente lo intenté y no fue para mí, como era de esperar.)copy
comando. ¿También probastecygwin
y el comando bashmv
?"
,|
,/
, y por supuesto la barra invertida (que parece que no puede entrar aquí I :))) están en una clase diferente de caracteres problemáticos ( reservados ), y me temo que ni elcopy
comando ni losCygwin
pueden cambiar de nombre. (Lo más probable es que tengas algunos caracteres diferentes en tu nombre de archivo problemático).a
.En
cmd.exe
ir al nuevo directorio y escriba lo siguiente:Esto es por simplicidad. A continuación, puede cambiar su nombre en XP como desee, al igual que
1.ogg
aWhere Have All the Cowboys Gone.ogg
.ogg
fue solo un ejemplo, la extensión puede ser cualquier cosa.fuente
Si tiene instalado Cygwin, debería poder encargarse del archivo. Tuve ese problema en este momento y el uso de rm de Cygwin en un shell bash fue capaz de eliminar el archivo sin problemas cuando ninguna aplicación de Windows, incluido el Explorador y el intento de usar la especificación de archivos UNC con CMD.exe ayudó.
Me imagino que mv lo haría en caso de que quisieras conservar el archivo.
Una configuración básica de Cygwin solo toma unos minutos, y siempre la mantengo de todos modos porque hay muchas buenas herramientas. Es más fácil que arrancar Linux, incluso usando un CD en vivo.
fuente
\\?\
También funcionaría en este caso, cuando se usa correctamente con una ruta Unicode totalmente calificada. Está pasando por alto el código de la biblioteca de tiempo de ejecución en modo de usuario que emula alguna regla antigua y peculiar de MS-DOS de los años 80 que ignora los espacios al final de los nombres. El problema con los caracteres no válidos y reservados no se puede abordar de esta manera.Suponiendo que el volumen en cuestión es FAT32 o NTFS, intente ejecutar chkdsk. Eso debería limpiar las entradas de directorio 'corruptas', lo que (en este caso) significaría eliminar el?. Si es el volumen de arranque, es posible que necesite reiniciar para hacerlo.
fuente
:
y al hacer esto desapareció el directorio. NO hagas esto.chkdsk
se trasladó el contenido de la carpeta en el directorio raíz del disco duro en una carpeta oculta y pude tener en mis archivos allí ver: superuser.com/a/320654/2293Esto debería funcionar (al menos, lo hizo para mí):
Ese comando generaría algo similar a esto:
¡Eso
WH5E97~1
es lo que estás buscando!(Aviso: este código está totalmente inventado, pero debe ser similar al que encontrará)
Sabiendo eso, un simple
debería hacer el truco.
Espero eso ayude.
fuente
dir t97*
devuelve ambos archivos, debido a que el comodín asterisco coincide con el archivot.txt2
at97.txt
mediante el uso de su mapa de nombre cortoT97B4~1.TXT
has probado:
Podría funcionar.
fuente
Pruebe un comodín en movimiento:
Esa es probablemente su mejor opción, siempre que solo haya un archivo que coincida con el comodín.
fuente
arrastrar y soltar a una nueva carpeta, navegar en el símbolo del sistema a esa carpeta y escribir
fuente
Pruebe cygwin para cambiar el nombre del archivo:
el comando sería:
mv filename?.ogg filename.ogg
fuente
La mayoría de los comandos internos de Microsoft se controlan con la presencia de
explorer.exe
.Abra su Administrador de tareas y examine la lista de procesos activos actuales. Encontrarás
explorer.exe
entre ellos. Haga clic derecho y terminar / detener / cerrarexplorer.exe
. No cierre el Administrador de tareas todavía. Ahora, vaya al archivo ofensivo con un administrador de archivos secundario e intente eliminar o cambiar el nombre con comodines. Probablemente será exitoso.Ahora, regrese a la ventana del Administrador de tareas y haga clic derecho en la línea superior que dice Aplicaciones, luego elija el botón inferior que dice Nueva tarea. Introduzca
explorer.exe
. Explorer vuelve a aparecer y el archivo ofensivo ya no está allí.fuente
La GUI de WinRAR le permitirá cambiar el nombre de los archivos sin siquiera tener que empaquetarlos primero en un archivo. Lo probé en Windows 8.1, con un nombre de archivo muy largo. Trabajado como un encanto.
fuente
Si tiene WinRAR, empaquételo en WinRAR, cámbiele el nombre a WinRAR, descomprímalo.
O puede probar con un VBScript, tomar el siguiente script y guardarlo en un archivo con extensión .vbs .
fuente
También tuve un problema similar con una carpeta. El nombre de la carpeta era ".min". que normalmente no está permitido.
Cambiar nombre no permitido (haga clic para ver la imagen)
Usando Winrar pude resolver esto. Lo que hice fue
Agregar al archivo ... (haga clic para ver la imagen)
Esto está permitido ya que Windows realmente no verifica qué hay dentro del archivo .rar. Tan pronto como cambie el nombre, extraiga el archivo y listo.
Espero que esto ayude.
fuente
10:2
.Use cmd.exe en este directorio con comodines. Por ejemplo:
fuente
El administrador de archivos 7-Zip (7-zip.org) cambiará el nombre de los archivos y directorios que XP no puede. Solo lo usé para extraer un archivo .tar y renombrar el archivo .chm adjunto, llamado ilegalmente. No se requiere LiveCD.
Tschüß!
fuente
Tuve un problema similar con 2 carpetas anidadas con subcarpetas. No pude renombrar ni eliminar algunos de los archivos (lo intenté de muchas maneras). Por fin, encontré la solución: Teracopy.
Instálelo, haga clic derecho en la carpeta o archivo y seleccione teracopy. Se abrirá Teracopy, luego solo haga clic en
delete
orename
. Lo cambiará de nombre o lo eliminará.Es posible que desee probarlo.
fuente
Me he encontrado con la misma situación.
Buscando en Google aprendí que no hay una solución nativa.
... y uso como shell el TCC de JPSoft, que tampoco podía manejar esos malditos archivos.
Pero, también aprendí que Cedrick Collomb's Unlocker ( http://www.emptyloop.com/unlocker/ ) es capaz de manejarlo.
Y lo tenía en mi configuración. Además, lo recomiendo mucho.
Bueno, al menos esta solución no implica abandonar el entorno de Windows ...
fuente
Arreglé un archivo FLAC como este usando el comando de apertura básico de Winamp, usando la ventana del explorador de programas. Cuando fui a la carpeta, tenía la opción de cambiar el nombre, a diferencia de Explorer.
fuente
Me encontré con una situación similar. Ninguna de las soluciones publicadas funcionó para mí, pero finalmente encontré una solución fácil:
Simplemente copié el archivo (sí, todavía era posible copiarlo) en una memoria USB, lo renombré allí y lo volví a colocar. Dejo que otros expliquen por qué funcionó.
fuente
Esta no es una respuesta directa (como en cómo Windows puede renombrar un archivo), pero esto funciona para mí. Los archivos ilegales generalmente están en una unidad externa, por lo que conecto la unidad externa a mi tableta Android . Esto me permite cambiar el nombre del archivo que Windows puede leer. Esto trata con caracteres especiales, pero el problema habitual que obtengo es un nombre de archivo que comienza o termina con un espacio o termina con un '.'
Probé una de las herramientas de terceros FlexRenamer, pero esto todavía tiene problemas con lo anterior.
fuente
En la mayoría de los casos, esta respuesta es inútil .
Me engañaron los nombres de archivo con caracteres que se representan como signos de interrogación cuando, de hecho, son solo caracteres que los M $ -fonts predeterminados no pueden / no pueden mostrar.
¿Debo eliminar esta publicación? Todavía podría ayudar a algunas personas ...
Intente usar el cmd.exe integrado en la finalización de pestañas.
dir /x
no ayuda (el NTFS se creó sin soporte para nombres de archivo cortos):Intentar cambiarle el nombre escribiendo / copiar y pegar el nombre no funciona:
Para que funcione, debe usar tabulación completa . Simplemente navegue hasta el directorio correcto en cmd-shell, escriba
ren
, presione la tecla tabuladora y siga presionando hasta que aparezca el nombre 'correcto':luego escribe el resto y presiona enter:
Serás recompensado con esto:
Es un poco tedioso, pero hasta ahora esto siempre me ha funcionado con archivos y directorios (Windows 7 y 8).
Nota al margen graciosa: los
ren
comandos-en 2. y 3. son idénticos pero no funcionarán sin usar tabulación completa. E incluso si ha utilizado la finalización de tabulación, ya no funcionará tan pronto como edite el nombre después deren
(por ejemplo, elimine y agregue un signo de interrogación).fuente