La página del manual da dos ejemplos:
rename 's/\.bak$//' *.bak
rename 'y/A-Z/a-z/' *
Entonces es s o y y luego /replaceThis/withThis
¿Qué significan los principales sy e? ¿Hay otras opciones?
La página del manual da dos ejemplos:
rename 's/\.bak$//' *.bak
rename 'y/A-Z/a-z/' *
Entonces es s o y y luego /replaceThis/withThis
¿Qué significan los principales sy e? ¿Hay otras opciones?
En el primer caso:
rename 's/\.bak$//' *.bak
está ejecutando una expresión regular contra nombres de archivo y reemplazando la parte coincidente de las expresiones (.bak al final del nombre de un archivo) con la segunda expresión (que está vacía).
En el segundo caso:
rename 'y/A-Z/a-z/' *
está haciendo coincidir el espacio del patrón de expresión regular y transliterando al objetivo. En otras palabras, el rango AZ se cambia al rango az, lo que hace que los nombres de archivo sean minúsculas.
Le sugiero que mire la página de manual de sed para obtener más comandos y más detalles. Creo que el comando 's' se usa con mayor frecuencia. Además, la expresión regular (sección 7) y la documentación de Perl también pueden ser de ayuda. En particular, aquí hay un tutorial sobre perl y expresiones regulares.
De man sed
:
s / regexp / reemplazo / Intenta hacer coincidir la expresión regular contra el espacio del patrón. Si el éxito Ful, reemplace esa porción combinada con reemplazo. los el reemplazo puede contener el carácter especial y para referirse a eso porción del espacio del patrón que coincidía, y el especial escapa \ 1 a \ 9 para referirse a la correspondencia correspondiente subexpresiones en la expresión regular. y / source / dest / Transliterar los caracteres en el espacio del patrón que aparecen en origen al caracter correspondiente en dest.