Foros del Web » Administración de Sistemas » Unix / Linux »

¡¡¡Noooo!!!¡¡¡No encuentro el error en el código de este SCRIPT!!!

Estas en el tema de ¡¡¡Noooo!!!¡¡¡No encuentro el error en el código de este SCRIPT!!! en el foro de Unix / Linux en Foros del Web. Hola, pues eso que no sé donde está el error de este código, si alguien me pudiera ayudar estaría bien. Código: #! /bin/bash # Ejercicio ...
  #1 (permalink)  
Antiguo 09/12/2010, 05:11
 
Fecha de Ingreso: diciembre-2010
Mensajes: 52
Antigüedad: 13 años, 4 meses
Puntos: 5
¡¡¡Noooo!!!¡¡¡No encuentro el error en el código de este SCRIPT!!!

Hola, pues eso que no sé donde está el error de este código, si alguien me pudiera ayudar estaría bien.
Código:
#! /bin/bash
# Ejercicio que empaqueta una serie de archivos o directorios y los comprime,
# también los introduce en la carpeta CopiasSeguridad

si_existe(){                                                                             #Función que dice si un argumento existe
	local f="$1"
	[[ -a "$f" ]] && return 0 || return 1
}


if [ "$#" = "1" ]; then										#Si el número de argumentos es uno pues...
	if ( si_existe "$1" ) ; then                            #comprobamos que existeel argumento
		tar -cvf copia.tar "$1"								#empaquetamos
		gzip copia.tar										#comprimimos
		if ( si_existe "CopiasSeguridad") then			#Vemos si ya existe la carpeta destino
			mv copia.tar.gz CopiasSeguridad					#Como existe lo movemos directamente
		else												# Si no creamos CopiasSeguridad y lo metemos dentro
			mkdir CopiasSeguridad
			mv copia.tar.gz CopiasSeguridad
		fi
	else 
		printf "El directorio no existe\nForzaré la salida del script, a mí nadie me vacila\n" #Si no existe el directorio o archivo fozamos la salida del script
		exit
	fi
else
	if [ "$#" = "0" ]; then
		printf "Numero de argumentos incorrecto, que quieres que haga con 0 argumentos\n"		#Si no introducimos argumentos forzamos la salida
		exit
	else																						#Si el nº de argumentos es mayor que 1 hacemos esto:
		> copia.tar																				#Creamos un copia.tar vacío
		if ( si_existe "$1" ) then																#Vemos si existe el primer argumento
			tar -cvfcopia.tar "$1"																#Empaquetamos el primer argumento
		else
			printf "El archivo o directorio $1 no existe, no lo añadiré a CopiasSeguridad, lo siento\n"   #Si no existe forzamos la salida
		fi	
		for (( CONTADOR=2; CONTADOR<="$#"; CONTADOR++ )) ; do									#Este bucle me va empaquetando uno a uno cada uno de los argumentos
			if ( si_existe "$CONTADOR" ) then													
				tar -rvfcopia.tar "$CONTADOR"													#Creo que el error está aquí
			else
				printf "El archivo o directorio $CONTADOR no existe, no lo añadiré a CopiasSeguridad, lo siento\n"
			fi
		done
		gzip copia.tar																			#Comprimimos
		if ( si_existe "CopiasSeguridad") then													
			mv copia.tar.gz CopiasSeguridad														#Movemos nuestro archivo compreso a CopiasSeguridad
		else	
			mkdir CopiasSeguridad																#Creamos la carpeta y luego la movemos
			mv copia.tar.gz CopiasSeguridad
		fi
	fi
fi
Gracias por vuestra visita.
  #2 (permalink)  
Antiguo 09/12/2010, 12:14
 
Fecha de Ingreso: agosto-2008
Mensajes: 240
Antigüedad: 15 años, 7 meses
Puntos: 6
Respuesta: ¡¡¡Noooo!!!¡¡¡No encuentro el error en el código de este SCRIPT!!!

No te falta un espacio?

Código:
tar -cvf copia.tar "$1"
  #3 (permalink)  
Antiguo 09/12/2010, 12:54
 
Fecha de Ingreso: diciembre-2010
Mensajes: 52
Antigüedad: 13 años, 4 meses
Puntos: 5
Busqueda Respuesta: ¡¡¡Noooo!!!¡¡¡No encuentro el error en el código de este SCRIPT!!!

Es lo mismo, hace lo mismo de una forma que de otra.
¿Por qué no me funciona?
  #4 (permalink)  
Antiguo 12/12/2010, 21:51
Avatar de calichecal  
Fecha de Ingreso: junio-2009
Ubicación: Colombia
Mensajes: 288
Antigüedad: 14 años, 10 meses
Puntos: 12
Respuesta: ¡¡¡Noooo!!!¡¡¡No encuentro el error en el código de este SCRIPT!!!

Cita:
Iniciado por lomasdelicioso Ver Mensaje
Es lo mismo, hace lo mismo de una forma que de otra.
¿Por qué no me funciona?
utiliza firebug, es una extension de mozilla firefox que ayuda mucho ala hora de detectar errores en script grandesss...
__________________
Hay una fuerza motriz más poderosa que el vapor, la electricidad y la energía atómica: la voluntad. -Einstein-
  #5 (permalink)  
Antiguo 14/12/2010, 08:31
AlvaroG
Invitado
 
Mensajes: n/a
Puntos:
Respuesta: ¡¡¡Noooo!!!¡¡¡No encuentro el error en el código de este SCRIPT!!!

Cita:
Iniciado por calichecal Ver Mensaje
utiliza firebug, es una extension de mozilla firefox que ayuda mucho ala hora de detectar errores en script grandesss...
¿?

Cita:
Iniciado por lomasdelicioso Ver Mensaje
Es lo mismo, hace lo mismo de una forma que de otra.
¿Por qué no me funciona?
¿Y si mostrás el error que recibís al ejecutarlo, o nos mostrás qué parte no se ejecuta bien? nadie por aquí está para perder tiempo analizando código a ciegas.


Saludos.

Etiquetas: encuentro
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 15:12.