Script sftp

Fermé
Novisoft - 29 juin 2008 à 09:11
mamiemando Messages postés 33459 Date d'inscription jeudi 12 mai 2005 Statut Modérateur Dernière intervention 8 janvier 2025 - 9 avril 2011 à 02:24
Bonjour,

Je cherche un script bash utilisant sftp pour copier le contenu d'un répertoire de mon serveur linux vers un autre serveur distant. Je sais faire l'opération manuellement. Mais j'aurais aimé que ça se fasse automatiquement via cron.

Voici le script en langage humain :)

- Va dans le répertoire où se trouvent les fichiers à transférer
- Connecte-toi en sftp au site destinataire des fichiers à transférer
- Entre le mot de passe du compte
- transfert le (les) fichiers(s) dans le répertoire /home/utilisateur/www
- Fin

Je voudrais que ce script s'exécute une fois par jour.

Merci d'avance pour votre précieuse aide

Novisoft
A voir également:

3 réponses

Franzux Messages postés 8907 Date d'inscription mercredi 5 décembre 2007 Statut Contributeur Dernière intervention 27 octobre 2015 1 145
29 juin 2008 à 11:00
Bah, avec sftp je ne sais pas, mais avec ftp ça devrait donner quelque chose comme ça :

#!/bin/bash
# Va dans le répertoire où se trouvent les fichiers à transférer
cd /le/repertoire/où/sont/le(s)/fichier(s)

HOST='adresse_du_serveur'
USER='login'
PASSWD='pass'

# Connecte toi au site destinataire des fichiers à transférer
ftp -n -v $HOST << EOT
ascii
# Entre le login et le mot de passe du compte
user $USER $PASSWD
prompt
# Transfère le(s) fichier(s) dans le répertoire /home/utilisateur/www
cd /home/utilisateur/www
put fichier_à transférer
bye
bye
EOT


0
Salut Franzux,

Merci beaucoup pour le script. Je viens de l'essayer, ça marche, j'ai just un petit souci avec les fichiers à copier. En fait, j'ai mis put *.tar.gz pour que tous les fichiers qui se terminent avec .tar.gz soient transférés. Mais seul le premier fichier dans la liste a été transféré.

Comment faire ? y a-t-il quelque chose à modifier dans le script ?

Merci encore
0
il faut utiliser mput
0
mamiemando Messages postés 33459 Date d'inscription jeudi 12 mai 2005 Statut Modérateur Dernière intervention 8 janvier 2025 7 813
9 avril 2011 à 02:24
Pourquoi n'utilises-tu pas directement scp ?

scp -r /repertoire/a/uploader  login@ip_cible:/chemin/cible
scp -r login@ip_cible:/repertoire/a/downloader /chemin/cible


À partir du moment où tu utilises des clés ssh on peut imaginer que les commandes scp soient aussi transparentes qu'un bon vieux cp.

Bonne chance
0