2 votos

Cómo eliminar un archivo con errores de codificación en Android.

Transferí dos archivos de un dispositivo Windows a un dispositivo Android a través de xftp.

Los nombres de estos dos archivos aparecen como caracteres ilegibles en mi dispositivo Android, por ejemplo, .ts

Los archivos se pueden abrir pero no se pueden eliminar ni operar de otra manera. Por ejemplo, uno de ellos es un archivo .docx, se puede abrir con Microsoft 365 (Office)

Pero cuando intento eliminarlo, recibo un mensaje que dice No existe el archivo o directorio

El archivo fue transferido a través de xftp (no parece que haya cambiado la configuración de codificación por defecto), y el nombre original del archivo era en chino.

Más información sobre el archivo

~/storage/downloads $ ls -il
total 189320
320255 -rw-rw---- 1 root everybody 0 Aug 4 13:05 ''$'\241\266'''$'\253\241\267''.docx'
449669 -rw-rw---- 1 root everybody 193668200 Aug 17 19:07 ''$'\265\347\301\367\323\353\265\347'''$'\272'''$'\347\327\350\265'''$'\330''.ts'
~/storage/downloads $

Versión del dispositivo

  • Samsung SM-A5260 (Galaxy A52 5G)
  • Versión de hardware: REV0.4
  • Versión de One UI: 5.1
  • Versión de Android: 13

Intento

  1. Intenté eliminar el archivo usando el administrador de archivos, pero no pude encontrar los dos archivos en el administrador de archivos por defecto del sistema. Pude encontrar los dos archivos en otros administradores de archivos pero hubo un error al intentar borrarlos.
  • Intenté vaciar la carpeta (manteniendo solo estos dos archivos en ella), mostré dos elementos en la carpeta en el administrador de archivos por defecto del sistema, pero aparece vacía después de abrir la carpeta (incluso si se marca Mostrar archivos ocultos)
  1. Intento usar termux para realizar operaciones, y cuando ingreso rm .ts, devuelve rm: no se puede eliminar '.ts': No existe el archivo o directorio

  2. También intenté usar el ejecutivo de adb shell rm .ts y aún obtuve los mismos resultados

  3. Cuando intenté eliminar todo el directorio rm ./Download -r, la terminal devuelve

    rm: .docx: No existe el archivo o directorio rm: .ts: No existe el archivo o directorio

  4. Comandos como 'rm *.docx' son inválidos

  5. Finalmente lo intenté

    $ ls -i 320255 \241\266\253\241\267.docx 449669 \265\347\301\367\323\353\265\347\272\347\327\350\265\330.ts $ find -inum 320255 -delete $ ls \241\266\253\241\267.docx \265\347\301\367\323\353\265\347\272\347\327\350\265\330.ts

Aunque no hay mensaje de error al ejecutarse, el archivo sigue existiendo después de ls nuevamente.

  • También intenté find./ -inum 320255 -print -exec rm {} \\; u otras instrucciones similares. Obtuve el mismo resultado (sin errores pero el archivo aún existe)
  1. También intenté cambiar la codificación de la terminal pero sin éxito.

0voto

snurre Puntos 2797

Tengo el mismo problema con un archivo .webm. Probé esto:

rm -i *.webm

¡Y funcionó!

Así que prueba esto

rm -i *.ts
rm -i *.docx

Creo que esto ocurrió porque hay caracteres que no son totalmente reconocidos por la terminal.

¡Espero que ayude!

-1voto

John Dallman Puntos 103

Creo que estás teniendo problemas porque tienes caracteres de comillas simples como parte de los nombres de archivo. Primero, asegúrate de tener solo los dos archivos problemáticos en el directorio, cd allí en la shell de ADB, haz un ls -A para asegurarte de que no hay nada más en el directorio, y luego haz

rm -i *

Eso te pedirá que confirmes cada eliminación, y es posible que haga el trabajo.

-1voto

John Dallman Puntos 103

Aquí tienes una respuesta diferente. De nuevo, asegúrate de tener solamente los dos archivos problemáticos en el directorio, cd ahí en el shell de ADB, y hacer un ls -A para asegurarte de que no haya nada más en el directorio. Entonces intenta esto:

ls -b

Eso debería darte los nombres de los archivos con caracteres completamente escapados. Si eso parece funcionar, intenta esto:

rm -i $(ls -b)

PreguntAndroid.com

PreguntAndroid es una comunidad de usuarios de Android en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X