Outils d'utilisateurs

Outils du Site


lien:bash:perso:transfert

retour

Transfert

Ce script permet de transférer des fichiers entre une machine locale et un serveur avec scp, copie sécurisée

#!/bin/bash 
# transfert 
dest="eleves@serveur:" #serveur défini dans /etc/hosts 
menu() 
{ 
 echo " Utilisation de transfert" 
 echo " Exemple transfert -e fichier avec un argument" 
 echo " Les options : -h cette aide " 
 echo " -e envoyez de votre poste au serveur " 
 echo " -r recevez du serveur sur votre poste " 
 echo "  On peut mettre 2 arguments fichier(source) et dossier(destination)" 
 echo "  Exemple transfert -e tp_nom.tgz TP  " 
} 
 
if [ -z "$*" ] #si pas d'argument 
    then echo "il faut au moins un argument"  
        menu # on lance la fonction menu qui affiche une aide pour l'utilisation de transfert 
        exit 1 #on quitte le script avec une erreur 
else 
    while getopts "her" option #options acceptées uniquement -h, -e, -r 
    do case $option in 
        h) menu #afficher l'aide 
            exit 0 ;; #on quitte le script sans erreur 
        e) cmd='scp $1 $dest$dossier' ;; # envoyer un fichier 
        r) cmd='scp $dest$1 $dossier'  # recevoir un fichier 
    esac # si pas her , affiche une erreur 
    done 
fi 
shift $(($OPTIND -1)) # décalage des arguments pour enlever les options 
dossier=${2:-"."} # si pas de deuxième argument on met ., le répertoire courant 
eval "echo $cmd" #on affiche la commande 
eval $cmd #on exécute la commande  
exit 0 #on quitte le script sans erreur 
lien/bash/perso/transfert.txt · Dernière modification: 2009/05/23 13:21 par per