Concaténation de commande

Salut,

Je cherche à concaténer deux commandes sur le client NCFTP 3.1.8, la première pour entrer à partir du shell dans "ncftp":
ncftp -u login -p password adresse_ftp/rep

puis la deuxième pour transférer un fichier
put -z /home/toto/backup.tar.gz backup.tar.gz

Voilà c'est tout...

 \  /  
  'V'   Urba

6 réponses

  1. Contributeur
    Merci Dal, c'est la solution.

    Il faut avoir les permissions (écriture et lecture) sur le répertoire d'arrivé et de départ....

    \ /
    'V' Urba
    0
    1. Contributeur
      Merci,

      Bon j'ai réussi à créer un fichier backup.sh sous "vi" :

      #!/bin/sh

      tar -czf /home/ramses/backup/save.tar.gz /home/ramses/essai/

      ncftpput -u login -p password 192.168.1.2 /backup /home/ramses/backup/save.tar.gz


      Quand je lance : ./backup.sh il me met :
      [ramses@localhost backup]$ ./backup.sh
      tar: Removing leading `/' from member names
      ncftpput /home/ramses/backup/save.tar.gz: server said: save.tar.gz: Permission denied


      Pourtant je ne suis pas loguer en tant que root.
      \ /
      'V' Urba
      0
      1. Contributeur
        Re Urba,

        L'usage correct de tar est :
        cd /home/ramses
        tar -czf /home/ramses/backup/save.tar.gz essai/
        

        Celà t'évitera d'avoir le message "tar: Removing leading `/' from member names" à chaque fois.

        Pour l'autre erreur "ncftpput /home/ramses/backup/save.tar.gz: server said: save.tar.gz: Permission denied"

        Ton utilisateur ftp a-t-il des droits d'écriture sur le répertoire ftp /backup ?

        Dal
        0
    2. Contributeur
      Salut Urba,

      ncftpput(1) manual page
      Name
      ncftpput - Internet file transfer program for scripts 
      Synopsis
      ncftpput [options] remote-host "remote-directory" "local-files..."


      1. remote-host doit être un nom d'hôte, de la forme "bowser.nintendo.co.jp " (exemple tiré de la man page)
      2. remote-directory c'est là que tu dois préciser le répertoire distant (ton /rep)
      3. local-files... c'est le (ou les) fichier(s) que tu veux transférer à cet emplacement.

      Essaye çà :

      ncftpput -u login -p password 192.168.1.2 /rep /home/rep_local/backup.tar.gz


      Dal

      P.S. : Alin et moi t'avions déjà donné des méthodes pour faire celà en utilisant le client ftp tout bête cf. http://www.commentcamarche.net/forum/affich-1128155#1
      0
      1. Contributeur
        La concaténation avec "&&" ne fonctionne pas il ne prends pas en compte .

        j'ai mis :
        ncftpput -u login -p password ftp://192.168.1.2/rep/ /home/rep_local/backup.tar.gz backup.tar.gz

        l'invite me réponds :

        tar: Removing leading `/' from member names
        ftp://192.168.1.2: unknown host.
        ncftpput: cannot open ftp://192.168.1.2: unknown host.


        alors que la commande :

        ncftp -u login -p password ftp://192.168.1.2/rep/

        me renvoi:

        tar: Removing leading `/' from member names
        NcFTPPut 3.1.8
        ncftp>


        Comprends pas!!
        \ /
        'V' Urba
        0
        1. Contributeur
          Ok, merci je vais essayer de suite.

          \ /
          'V' Urba
          0
          1. Modérateur
            Salut,

            Essaye avec:
            &&
            
            Dans l'exemple : commande1 && commande2, la commande2 ne sera exécutée que si la commande1 se termine par un succès.
            Dans ton cas :
            ncftp -u login -p password adresse_ftp/rep && put -z /home/toto/backup.tar.gz backup.tar.gz
            L'exemple est tiré de : http://www.trustonme.net/didactels/148.html

            Z'@+...che.
            JP : Zen, my Nuggets ! ;-)
            sh:/bin/laden: Not found !
            0
            1. Contributeur
              Salut jipicy,

              "put" est une commande ftp, pas une commande shell :)

              Dal
              0
            2. Modérateur
              @[Dal]Salut [Dal],

              Autant pour moi !

              Merci pour la rectification et l'info...

              Z'@+...che.
              JP : Zen, my Nuggets ! ;-)
              sh:/bin/laden: Not found !
              0