[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: Un script



El jue, 24-02-2005 a las 11:06, Alvaro escribió:
> Hola esto tratando de cambiar el nombre a unos ficheros que estan en un
> directorio mediante un script en bash.
> La idea es sencilla, hay que cambiar cada fichero con un nombre seguido de
> un numero que será introducido por el usuario.
> El script ya esta cai hecho y es el que pego a continuación, pero me surge
> el problema de que los ficheros pueden tener espacios entre medias del
> nombre. 
Yo me encontre con el mismo problema cuando en la empresa me pidieron un
codigito que me eliminara los codigos EXIF de todas las imagenes jpg de
una carpeta, el codigo en cuestion fue sencillo, pero me costo conseguir
q tratara por igual a los archivos con espacios en el nombre, al final
lo solucione con ayuda del "sed" diciendole que me substituyera el
caracter espacio(" ") por el BARRA-espacio ("\ ") que es la forma q lo
interpreta bien el shell. Te pego mi codigito abajo, por si te ayuda.
Quizas haya otra forma mas simple, pero en ese momento no di con ella.
Un saludo.

#!/bin/sh
# Eliminador de EXIF
# Autor: Alejandro Lorente
temp1="/tmp/borrable1"
temp2="/tmp/borrable2"

echo "Debes indicar la ruta (ej: /home/alex/fotosCannon/)"
echo "Ruta?"
read ruta
for archivo in $ruta*
do
	echo "$archivo" > $temp1
	sed 's/ /\ /g' $temp1 > $temp2
	aux=`cat $temp2`
	# El programa jhead trabaja el EXIF
	jhead -de "$aux"
done
echo "FIN"
-- 
+++++++++++ Alejandro +++++++++++
+ debianARROBAeidansoftPUNTOcom +
+++++ Usuario Linux~# 343727 ++++
+++++ http://eidan.no-ip.com ++++
+++++++++++++++++++++++++++++++++

"¡A mi señal, ira y fuego!"
	Máximo Décimo Meridio



Reply to: