Visualizzazione dei risultati da 1 a 7 su 7
  1. #1

    Upload FTP automatizzato

    Salve gente!

    Ogni giorno ad una data ora la mia macchina linux deve:
    - instaurare una connessione ftp con un server remoto (autenticandosi con esso con nome utente e password)
    - prendere un file (gli dico io quale) e eseguire l'upload in una directory del server ftp.
    - dopodichè la connessione ftp va chiusa.

    Per il cron job non ci sono problemi (so come si fa).
    Ma quale comando devo eseguire per l'upload ftp e con quali opzioni?
    Supponiamo che
    l'ftp server sia ftp://ftp.baubaumiciomicio.it
    nome utente: audelvio
    password: cxiwe6346
    il file locale da uploadare: /home/quisquino/temp29042004.txt
    la directory di destinazione: /backup
    (cioè ftp://ftp.baubaumiciomicio.it/backup)

    Mi date una mano?
    Sono sicuro che è semplice, ma non riesco a capire le opzioni da dare ad ftp...

    Grazie in anticipo!!!
    Make Pazziata-tàààà NOT war!

  2. #2
    Utente di HTML.it L'avatar di gianiaz
    Registrato dal
    May 2001
    Messaggi
    8,027
    quesito interessante....
    mi ci sono divertito un po'.

    allora:

    nel file della tua home directory .netrc metti i dati di collegamento al tuo server ftp.
    codice:
    machine ftp.indirizzodesiderato
    login iltuologin
    password latuapass
    chmod 600 .netrc

    lo script ftp sarà:
    codice:
    #! /bin/bash
    file="filedaprelevare"
    ftp <<**
    echo "Collegamento in corso...."
    open ftp.indirizzodesiderato
    echo "Collegamento effettuato..."
    echo "Prendo il file $file"
    get $file
    echo "Fatto..."
    bye
    **
    ciao ciao

    p.s. gli echo servono solo per "abbellire" lo script, se lo esegui in auto senza controllare l'output ti conviene toglierli

  3. #3
    Grazie per la risposta immediata!!!

    Saresti anche così gentile da spiegarmela?

    In particolare: che fa il .netrc ?
    Se voglio fare questa cosa come root, devo modificare il file dentro /root? (a proposito: non esiste, devo crearlo io?)
    Cosa comporta?

    E poi nello script: non dovrebbe essere put anziché get?
    Sto effettuando upload, non download... :master:

    Thanks!
    Make Pazziata-tàààà NOT war!

  4. #4
    Utente di HTML.it
    Registrato dal
    Jun 2001
    Messaggi
    98
    puoi anche usare : ncftpget oppure ncftput

  5. #5
    Utente di HTML.it L'avatar di gianiaz
    Registrato dal
    May 2001
    Messaggi
    8,027
    Originariamente inviato da Zingaro2002
    Grazie per la risposta immediata!!!

    Saresti anche così gentile da spiegarmela?

    In particolare: che fa il .netrc ?
    Se voglio fare questa cosa come root, devo modificare il file dentro /root? (a proposito: non esiste, devo crearlo io?)
    Cosa comporta?

    E poi nello script: non dovrebbe essere put anziché get?
    Sto effettuando upload, non download... :master:

    Thanks!
    il file .netrc contiene i dati di accesso ai siti ftp.
    Quando ti connetti a ftp con il comando

    ftp ftp.sitochevuoi.it

    prima di chiederti il login e la password viene controllata l'esistenza del file .netrc e che questo file contenga una sezione dedicata all'indirizzo a cui stai cercando di connetterti.

    la notazione

    ftp <<**
    fa in modo che lo standard input (la tastiera) venga sostituito dal contenuto tra asterischi del file.

    A questo punto nella parte dove io ho messo il get potrai mettere qualsiasi comando appartenente ad ftp.
    Nella luce di questa considerazione credo di aver sbagliato un particolare....
    Credo che gli echo non vadano bene.. ma per il tuo utilizzo credo non ti servissero...

    Ciao

  6. #6
    Grazie delle spiegazioni.

    Ho già provato: funziona alla grande :metallica

    (solo una cosa: gli echo vanno messi prima o dopo la connessione ftp, altrimenti li interpreta come comandi ftp e da' errore)

    Thanks
    Make Pazziata-tàààà NOT war!

  7. #7
    Originariamente inviato da ref
    puoi anche usare : ncftpget oppure ncftput
    Bisogna installarli?

    Come funzionano?
    Make Pazziata-tàààà NOT war!

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2024 vBulletin Solutions, Inc. All rights reserved.