Tengo un montón de imágenes como 1.jpg 2.PNG 3.gif 4.jpeg
en un directorio. Quiero cambiarles el nombre a todos a 1-s.jpg 2-s.PNG 3-s.gif 4-s.jpeg
.
Intenté ejecutar estos comandos pero no tuvo ningún efecto en los archivos del directorio:
rename 's/^(\d+)\.(.*)/$1-s.$2/' .
rename 's/^(\d+)\.(.+)/$1-s.$2/' .
rename 's/.*\.(.+)/$1-s.$2/' .
¿Qué hice mal?
Respuesta1
Utilice el comodín *
para los nombres de archivos:
rename 's/^(\d+)\.(.*)/$1-s.$2/' *
y puedes simplificarlo un poco:
rename 's/^(\d+)(?=\.)/$1-s/' *
donde (?=\.)
hay una anticipación positiva que asegura que tengamos un punto después del dígito, sin capturarlo.