shell script para dividir un paquetes grande y ser enviado por ftp

Forums: 

:sick:
Hola amigos...
aqui con un problema....estoy administrando un servidor Debian 4 con un servidor de ftp Proftpd .. tengo unos clientes que envian informacion..a mi servidor..pero el envio son de 4000 a 10000 fotos de 1 Mb aproximadamente..y un dia que envio 50000 fotos congestiono mi red....hasta no tener accesoa la misma... y tampoco podria entrar a mi servidor que era re lento...despues descubri que estaba enviando ese tamaño de informacion de 5 GB...

Despues puede averiguar como podria solucionar ese problema y me sugierieron dividir el paquete que enviar en paquetes mas pequeños con... un programa shell script...el cual lo divida hasta 10 MB los paquetes pequeños............

ahora estoy seguro que han pasado por ese problema mio....espeor que me ayuiden....por fa..
saludos.....

y ftp

Imagen de pepo

y ftp tambien ;)

------------------------------------------------
Linux User Registered #232544
Jabber : pepo@jabberes.org
Ekiga : pepo@ekiga.net
ICQ : 337889406
GnuPG-key : www.keyserver.net

------------------------------------------------
Linux User Registered #232544
Jabber : pepo@jabberes.org
Ekiga : pepo@ekiga.net
GnuPG-key : www.keyserver.net

Hace ya bastante tiempo hice

Imagen de tuxero

Hace ya bastante tiempo hice un script que precisamente me ayudaba a dividir ciertos archivos que suelo usar y que llegan a pesar entre 3 y 4 GB...

Obviamente inicialmente lo hacía a mano a punta de split, pero la verdad me cansé de lo mismo jeje :D y me puse a hacer dicho script; y hace un par de mese hice modificaciones pues se me ocurrió poner en un directorio todo lo que divide...

#!/bin/bash
# Script para dividir archivos
# Hecho por: Gabriel Eduardo Morejon Lopez
# Linux registered user: #378903
# Fecha: 08-03-2007 19:05
# Parametros
# $1 = Nombre del archivo
# $2 = Tamano a usar
# $3 = Prefijo (opcional)
#
# Por defecto emplea el parametro -d del comando split para
# emplear numeros y no letras en las divisiones
#
# El script crea un directorio con el nombre del archivo, para guardar
# todas las partes y generar una llave de comprobacion para el archivo
# original, y generar un "autoejecutable" de union.
#
# Formato del directorio: $NOMBRE_DE_ARCHIVO.dir

##################### AREA DE MENSAJES POR DEFECTO ##########################

MSG1="Debe indicar un nombre de archivo.";
MSG2A="Debe indicar el tamanio al que desea dividir.";
MSG2B="Expresado en KB, MB, GB: 700K, 1M, 1G";

CORRECTO="Finalizado con exito.";

AYUDA1="Uso: dividir Archivo.ext Tamanio[K|M|G] [NuevoNombre]";

ACERCA1="Hecho por: Gabriel E. Morejon Lopez";
ACERCA2="geml_ecuador@yahoo.com";
ACERCA3="Linux registered user: #378903";

##################### AREA DEL SCRIPT ##############################

#INICIO

if [ "$1" == "" ]; then
echo $MSG1;
exit 1;
else
ARCHIVO=$1
fi;

if [ "$1" == "?" ]; then
echo $AYUDA1;
exit 1;
fi;

if [ "$2" == "" ]; then
echo $MSG2A;
echo $MSG2B;
exit 1;
else
TAM=$2

fi;

#echo $ARCHIVO

if [ -f $ARCHIVO ]; then
mkdir $ARCHIVO-dir
DIRECTORIO=$ARCHIVO-dir
cd $DIRECTORIO
split -d -b $2 ../$1 $1-
echo $CORRECTO;
fi;

# FIN

Modifícalo a tu gusto, claro no te olvides de dejar mi nombre y añadir el tuyo... jajaja ;)

Gabriel Eduardo Morejón López.

[email]geml_ecuador@yahoo.com[/email] [img]http://counter.li.org/cgi-bin/certificate.cgi/378903[/img]

Antes fueron los dinosaurios los que se extinguieron, ahora le está llegando la hora a Micro$oft

Gabriel Eduardo Morejón López. [email]gabrielmorejon@gmail.com[/email] [img]http://counter.li.org/cgi-bin/certificate.cgi/378903

Claro nunca terminé en el

Imagen de tuxero

Claro nunca terminé en el script la parte de generar otro que una los archivos... la falta de tiempo o más bien el no saber organizarlo... :)

[email]geml_ecuador@yahoo.com[/email] [img]http://counter.li.org/cgi-bin/certificate.cgi/378903[/img]

Antes fueron los dinosaurios los que se extinguieron, ahora le está llegando la hora a Micro$oft

Gabriel Eduardo Morejón López. [email]gabrielmorejon@gmail.com[/email] [img]http://counter.li.org/cgi-bin/certificate.cgi/378903