He encontrado numerosos métodos para agregar un prefijo simple a los archivos en una carpeta en Linux, por ejemplo.
for FILENAME in *; do mv $FILENAME REF_$FILENAME; done
( https://stackoverflow.com/questions/4787413/rename-files-and-directories-add-prefix )
Me gustaría hacer esto pero con el cambio de REF para cada archivo a REFa, REFb, REFc, ... Esto se ejecutaría manualmente en un solo directorio porque el REF sería diferente para cada uno.
Gracias de antemano porque el ganador literalmente me ahorrará horas de entrada manual de datos ;-)
Respuestas:
La respuesta rápida y sucia sería la siguiente:
Pero prefiero hacerlo como un script que luego puede ejecutar, es más fácil de mantener y describir.
La primera línea carga una secuencia de letras de 3 dígitos, comenzando aaa, y descendiendo a zzz. Puede reducir o aumentar el tamaño de esta matriz aumentando o disminuyendo el número de {a..z}, y puede reemplazarlo con letras mayúsculas o alguna otra secuencia simple.
i es un contador que incrementamos para que podamos obtener una secuencia única para cada valor de REF.
Observo que no me gusta el bit de código "NOMBRE DE ARCHIVO en *", porque no funciona bien con los subdirectorios. Me inclino a reemplazar esa línea con
para manejar archivos, incluyendo subdirectorios, o
para archivos solo en el directorio actual (es decir, no lo recursivo, e ignorar directorios)
fuente
Podría crear un comando adaptado a este problema específico, estoy seguro de que otras respuestas lo harán. Mi respuesta es mas general , tal vez te quede bien.
vidir
(muy probablemente demoreutils
paquete) le permite editar los nombres de archivos en un editor de texto. Para elegir un editor configura elEDITOR
variable.De esta manera puedes usar muchas características de
vi
,emacs
o cualquier editor que uses. Leerman vidir
para aprender cómo hacerlo funcionar con subdirectorios si lo necesita.Este es un ejemplo de cómo se vería en tu editor:
Los números identifican archivos en esta instancia particular de
vidir
, les siguen las pestañas. No puede tocar estos números y pestañas a menos que sepa lo que está haciendo. Los cambios en los nombres de archivo se aplican cuando guarda el texto.Si tienes miedo, hay un nombre de archivo con pestaña o un carácter de nueva línea en algún lugar y esto romperá algo, entonces mantén la calma. Por lo que sé
vidir
Se negará a trabajar con él en primer lugar.Ahora la mejor parte. El editor también puede funcionar fuera de la consola, por lo que es posible:
EDITOR=kate vidir
, esto funcionarákate
editor.kate
y reemplazar el texto antiguo.Esto es muy poderoso. Eliminar líneas y guardar el archivo de texto eliminará los archivos. Los números de intercambio harán que los archivos intercambien nombres (o incluso rutas si trabaja con subdirectorios). Con un gran poder viene una gran responsabilidad. Probablemente debería experimentar primero con archivos y directorios fungibles.
fuente