Tengo varios archivos nombrados como that : screenshot 13:25.png
Windows luchan por abrir estos archivos probablemente debido a ":".
¿Cómo puedo reemplazarlo?
command-line
usuario236152
fuente
fuente
Respuestas:
En una terminal,
cd
en el directorio correcto y luego ejecute esto.Esto hará una vista previa del cambio de nombre. Debe reemplazar
:
con-
.Si eso parece correcto, elimine el
n
del final y luego hará el cambio de nombre real.Nota : las versiones de Ubuntu anteriores a la 17.04 no se incluyen
rename
, pero todavía está disponible en los repositorios predeterminados, así que úselosudo apt install rename
para obtenerlofuente
n
) fácilmente.rename 's/\:/-/g; s/%28/ /g; s/%29//g' ...
Aquí hay una solución de bash puro:
El
${var//pattern/replacement}
formato reemplazará todas las apariciones depattern
conreplacement
en la variable$var
. Para obtener más información sobre las capacidades de manipulación de cadenas de bash, consulte aquí .Si desea hacer esto para varios personajes, simplemente puede colocarlos en una clase de caracteres. Así, por ejemplo, para reemplazar a todos
;
,:
,=
,+
,%
,,
con guiones bajos, usted podría hacer:Básicamente, la idea es que eso
[ ]
significaany of the characters listed
. Por lo tanto, al colocar todos los personajes que desea reemplazar en la clase de personajes, todos se tratan a la vez.Para los caracteres específicos que solicitó, las cosas son un poco más complejas porque algunos de ellos deben escaparse (estoy ignorando el hecho de
/
que * nix no lo permite en los nombres de archivos más de lo que lo hace Windows, por lo que no será un problema):Tenga en cuenta que escapé del
\
,'
y"
agregando un\
en frente de cada uno.fuente
Si prefiere una GUI, instale pyrenamer:
Luego ejecútalo:
Tiene docenas de opciones para patrones y formatos de cambio de nombre.
fuente
Prefiero GUI pero como una extensión de Nautilus, es decir, Nautilus Actions Extra :
(Ver www.webupd8.org/2011/12/nautilus-actions-extra-pack-of-useful.html )
Luego, cuando selecciona archivos para cambiarles el nombre y hace clic en Cambiar nombre en el menú contextual, se le ofrecen muchas opciones para cambiar el nombre de los archivos.
fuente
El
renameutils
paquete tiene un práctico programa llamadoqmv
que proporciona un cambio de nombre de lote interactivo. Lo ejecuta en un directorio o una lista de archivos y genera un archivo de texto temporal que contiene sus nombres de archivo e inicia su editor favorito. Cuando salga del editor, cualquier nombre de archivo que haya cambiado se renombrará en consecuencia.qmv
convierte un problema de cambio de nombre de lote en un problema de edición de texto.En este caso, puede usar
qmv -f do *:*
para editar los nombres de todos los archivos que contienen dos puntos, y luego el:%s/:/_/g
comando en Vim (o una búsqueda y reemplazo correspondiente en cualquier editor que use).La
-f do
opción establece el formato del archivo de texto para que solo tenga el nombre del archivo de destino, lo que simplifica la búsqueda y reemplazo. El formato predeterminado tiene dos copias del nombre del archivo en cada línea, y solo edita la segunda. Eso le permite hacer lo correcto si ha eliminado o reordenado líneas en el archivo, pero no siempre es lo más fácil. También hay otros formatos.Con
qmv
, puede optar por canalizar el archivo generado a través de un comando de su elección, como, por ejemplosed
, si no desea la capacidad interactiva.fuente
Y aquí hay una secuencia de comandos Nautilus que reemplaza (¿todos?) Los caracteres incompatibles con Windows con un guión en todos los nombres de archivo seleccionados (según la respuesta de terdon ;-)
fuente
Thunar (el administrador de archivos XFCE) tiene una buena característica incorporada para renombrar archivos de forma masiva. Tiene opciones para eliminar / reemplazar caracteres, buscar y reemplazar, numerar archivos y más.
Instalar thunar:
Abra thunar, busque sus archivos, selecciónelos y elija 'cambiar nombre' (a través del menú contextual o F2)
fuente
fuente