Código de Linux/Unix Shell Scripting - Script para subir un archivo por ftp a nuestro servidor

Imágen de perfil

Script para subir un archivo por ftp a nuestro servidorgráfica de visualizaciones


Linux/Unix Shell Scripting

estrellaestrellaestrellaestrellaestrella(1)
Publicado el 27 de Marzo del 2014 por Xavi
3.227 visualizaciones desde el 27 de Marzo del 2014. Una media de 28 por semana
Este script, muestra como subir un archivo por ftp al servidor, poniendo el usuario, contraseña y posicionarnos en la carpeta destino a medida que el servidor nos va solicitando los datos.
Para ello, se utiliza expect.

Versión 1
estrellaestrellaestrellaestrellaestrella(1)

Publicado el 27 de Marzo del 2014gráfica de visualizaciones de la versión: Versión 1
3.228 visualizaciones desde el 27 de Marzo del 2014. Una media de 28 por semana
estrellaestrellaestrellaestrellaestrella
estrellaestrellaestrellaestrella
estrellaestrellaestrella
estrellaestrella
estrella

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
#!/usr/bin/expect -f
 
#
# ATENCION, necesario instalar el paquete expect
# apt-get install expect
#
# Este es un ejemplo de como subir un archivo a un servidor ftp
#
# Hay que guardar este archivo con extension .exp
#
# Para ejecutarlo, hay que pasarle como parametro el nombre del archivo a subir
#
# $ expect esteArchivo.exp fichero-a-subir-al-servidor-ftp
#
 
# Podemos eliminar los posibles mensajes de respuesta de los comandos
# Se deberia descomentar para produccion
# log_user 0
 
# Comprobamos que reciba por lo menos un parametro que tiene que ser el nombre
# del archivo a subir al servidor ftp
if $argc==0 {
    send_user "Tienes que indicar un archivo a subir\n"
    exit
}
 
# Definimos las variables
set ftp_host "192.168.0.1"
set dir_host "/home/user/fileput/"
set host_user "usuario"
set host_password "contrasena"
 
# El nombre del archivo a subir al servidor ftp lo cogemos del parametro recibido
set new_file [lindex $argv 0]
 
# Aumentamos el timeout a 30 segundos. Por defecto esta en 10.
set timeout 30
 
spawn ftp $ftp_host
expect "*Name*"
send -- "$host_user\r"
expect "Password:*"
send -- "$host_password\r"
expect "ftp>"
send -- "put $new_file $dir_host$new_file\r"
expect "ftp>"
send -- "quit\r"
send "bye"
exit 0



Comentarios sobre la versión: Versión 1 (1)

jose
30 de Diciembre del 2014
estrellaestrellaestrellaestrellaestrella
este script es para transferir archivos de un servidor a otro
Responder

Comentar la versión: Versión 1

Nombre
Correo (no se visualiza en la web)
Valoración
Comentarios

http://lwp-l.com/s2638