Hay les va un Script para hacer respaldos

tochoromero

Bovino adicto
#1
Hola comunidad, nunca he aportado algo de este tipo pero me surgió la necesidad, la solucioné y la comparto con ustedes.
Actualmente estoy trabajando en mi Compilador (para los que estudiaron ingeniería en sistemas saben de qué estoy hablando), el caso es: ¿A cuántos de ustedes no les ha pasado que están trabajando tranquilamente, compilan su proyecto y zas no corre, y no tienen ni idea de qué fue lo que sucedió y para acabar de amolar no han hecho respaldos desde sabe cuando :mariamagdalena: Apoco no es de lo peor? Pues se me ocurrió hacer un pequeño script que haga respaldos periódicamente de mi proyecto, sólo le tienes que especificar la carpeta de tu proyecto, una carpeta para respaldos, el intervalo entre respaldos y la cantidad de respaldos a guardar y listo a trabajar con toda confianza, sencillo pero práctico y funcional, les dejo el script para si lo quieren utilizar, hay algunas cosas que se pueden mejorar, en cuanto tenga chanza lo modifico para que también lo suba a un servidor FTP :) Si tienen comentarios o sugerencias adelante.
Sí alguien tiene dudas de como se usa pregunten y con gusto les explico.
Saludos

Código:
#!/bin/bash
#Crea una copia de seguridad de la carpeta especificada.
#

carpOriginal="ruta completa de tu carpeta original"; #esta la carpeta de la que se quiere hacer respaldo
carpRespaldo="ruta completa de tu carpeta de respaldos"; #esta es la carpeta donde se quiere respaldar
numeroRespaldos=6 #Cantidad de respaldos que guarda antes de borrar
intervalo=5 #intervalo de tiempo en segundos entre cada respaldos
infinito=
numeroCarpetas=0


#Verificar si existe la carpeta original
if [ ! -d $carpOriginal ]
then
	echo No existe la carpeta especificada
	exit 1
fi

#Verificar si existe la carpeta donde se desea hacer el respaldo
if [ ! -d $carpRespaldo ]
then
	mkdir "$carpRespaldo"
fi

#vamonos a la carpeta de respaldo
cd $carpRespaldo

until [ "$infinito" ]
do
	#verificamos cuantas carpetas tenemos
	numeroCarpetas=$( ls | wc -l )
	
	if [ $numeroCarpetas -ge $numeroRespaldos ]
	then
		#Si tenemos mas de 6 carpetas eliminar la más vieja
		carpEliminar=$( ls -tr | tr "$IFS" ";" | cut -f1 -d";"  )
		rm -R $carpEliminar
	fi
	
	
	#Creamos la carpeta para el respaldo
	fecha=$(date +'%d-%m-%T')
	mkdir "$carpRespaldo/$fecha"
	cp -R $carpOriginal "$carpRespaldo/$fecha" #copiamos la carpeta original
	
	sleep $intervalo
done
 

MDSjogren

Bovino maduro
#3
u.u se ve chido. me seria muy util si ya fuera tan avanzado para necesitarlo. jeje. ahorita lo mas que hago es cosas en html, css y javascript. pero gracias, igual me servira. creo.
 

tochoromero

Bovino adicto
#4
u.u se ve chido. me seria muy util si ya fuera tan avanzado para necesitarlo. jeje. ahorita lo mas que hago es cosas en html, css y javascript. pero gracias, igual me servira. creo.
Gracias por agradecer. De hecho si te sirve no imparta lo que estés haciendo igual a el la vale gorro solo respalda una carpeta. No olviden cambiarle los parámetros porque si no no sirve.
 

lluiss18

Bovino adolescente
#5
Hola de vdd gracias es de mucha utilidad, oye me podrias ayudar es qpenas stoy llegando a linux y me interesa un script que una carpeta de imagenes en video, gracs saludos
 
Arriba