Eliminar espacios de los ficherosy renombrarlos con un script para bash

Thursday, February 24, 2011 13:54
Posted in category Linux

Algunas herramientas no funcionan bien al trabajar con ficheros que contienen espacios en su nombre. Si lo que queremos es por ejemplo renombrar todos los ficheros de un directorio que contengan espacios, eliminando los espacios, podemos ejecutar el siguiente script:

#!/bin/bash
#Nos movemos al directorio
cd /un/directorio/otro/
#Con el comando tr reemplazaremos los espacios por guiones(o por el caracter que queramos)
for f in *; do mv "$f" `echo $f | tr ' ' '-'`; done
#Con el comando tr reemplazaremos los espacios por nada
for f in *; do mv "$f" `echo $f | tr  -d ' ' `; done
You can leave a response, or trackback from your own site.

2 Responses to “Eliminar espacios de los ficherosy renombrarlos con un script para bash”

  1. damupi says:

    March 1st, 2011 at 12:58 pm

    Me da el siguiente error

    tr: when not truncating set1, string2 must be non-empty

  2. deckerix says:

    March 1st, 2011 at 1:01 pm

    Gracias damupi, solucionado :-)

Leave a Reply