IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Shell et commandes GNU Discussion :

cron ftp shell


Sujet :

Shell et commandes GNU

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Mai 2007
    Messages
    19
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2007
    Messages : 19
    Par défaut [Résolu] cron ftp shell
    Bonjour,

    Etant nouveau dans le domaine de la programmation shell, j'apprends lentement mais surement.

    Mon besoin est d'envoyer régulièrement des repertoires sur un autre serveur.

    J'ai réussi à rediger ceci qui fonctionne bien :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    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
     
    #! /bin/sh
     
    HOST='IP'
    PORT='21'
    USER='user'
    PASSWD='pass'
    echo "Donner le nom de la commande"
    read DIRECT
     
    echo 'FTPing'
     
    ftp -i -n $HOST $PORT << END_SCRIPT
    quote USER $USER
    quote PASS $PASSWD
    cd orders/
    mkdir $DIRECT
    cd $DIRECT/
    binary 
    put /chemin/orders/$DIRECT/${DIRECT}_IC1.zip ${DIRECT}_IC1.zip
    put /chemin/orders/$DIRECT/${DIRECT}_S1.ps.zip ${DIRECT}_S1.ps.zip
    put /chemin/orders/$DIRECT/order.txt_upload order.txt
    pwd
    quit
     
    END_SCRIPT
     
    # End of script
    Comme vous le voyez, j'ai créé pour l'instant mon script pour le lancer manuellement. J' rentre le nom du répertoire "Donner le nom de la commande" et le scrip se connecte, créé le sous dossier et envoie par ftp les 3 fichiers.

    Ce que je voufrai faire c un script automatique (cron) qui lit mon répertoire orders et envoie toutes mes nouvelles commandes (une commande est un répertoire nommé 4785_*

    J'ai commencer à essayer avec ça mais je bloque :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     
    LISTE=$(ls 4785_*/)
     
    #connexion ftp
     
    for FIC in $LISTE
    do	
    	#creation repertoire envoie fichiers
    done

  2. #2
    tintin22
    Invité(e)
    Par défaut
    Si ton but est seulement d'envoyer des fichiers sur un autre serveur, tu peux le faire en une seule ligne de commande.
    Dernière modification par tintin22 ; 10/05/2009 à 17h32.

  3. #3
    Membre averti
    Profil pro
    Inscrit en
    Mai 2007
    Messages
    19
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2007
    Messages : 19
    Par défaut re
    Ben mon but en fait est le suivant.

    Un répertoire se créé à chaque commande dans mon dossier orders. Chaque commande (donc dossier) est composé de 3 fichiers.

    En lancant mon script ci-dessu j'arrive en lancant le bash à créer sur le serveur distant le répertoire de la commande et y transférer les trois fichiers. J'aimerai juste automatiser se script (tache cron). Donc le script devrai parser mon répertoire orders et effectuer l'envois ftp que je fais commande par commande avec mon premier script.

  4. #4
    tintin22
    Invité(e)
    Par défaut
    ça repond pas à ma question, est-ce que tu es forcé de passer par une connexion FTP, ou alors peu importe la methode utilisée (pourvu que les fichiers soient transférés) ?

  5. #5
    Membre averti
    Profil pro
    Inscrit en
    Mai 2007
    Messages
    19
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2007
    Messages : 19
    Par défaut re
    Tout d'abord merci de tes réponses rapides.

    Pour l'envoie en fait je dois déposer les fichiers donc sur un serveur distant qui n'est pas le mien. J'ai donc un acces ftp sur ce serveur.

    Je ne dois pas juste tranférer les fichiers. Il faut aussi que je crééer un répertoire. Ex : sur mon serverur j'ai 3 dossiers 4785_001, 4785_002, 4785_003 comprenant chacuns 3 fichiers.

    Je dois recréer ces trois dossiers sur le serveur distant et y déposer leur contenu

    Maintenant s'il existe un moyen de le faire en une seule ligne, je suis preneur

Discussions similaires

  1. Envoyer un fichier avec le protocole FTP. SHELL
    Par Ghostaunt dans le forum Linux
    Réponses: 6
    Dernier message: 03/04/2011, 07h20
  2. probleme ftp shell
    Par julinho99 dans le forum Linux
    Réponses: 5
    Dernier message: 24/04/2008, 09h42
  3. [FTP] Cli.. Cron... ou autres... ?
    Par fastmanu dans le forum Langage
    Réponses: 2
    Dernier message: 11/03/2006, 21h26
  4. Réponses: 2
    Dernier message: 01/06/2004, 16h12
  5. Cron + terminal + script shell
    Par nicolas.pissard dans le forum Linux
    Réponses: 3
    Dernier message: 17/03/2004, 09h24

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo