Précédent   Forum des professionnels en informatique > Systèmes > Linux > Applications > Shell
Shell Vos questions sur l'utilisation des commandes shell
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 04/07/2011, 13h12   #1
Membre émérite
 
Avatar de kmdkaci
 
Inscription : octobre 2007
Messages : 559
Détails du profil
Informations personnelles :
Localisation : France

Informations forums :
Inscription : octobre 2007
Messages : 559
Points : 815
Points : 815
Envoyer un message via Skype™ à kmdkaci
Par défaut FTP avec conditions

Bonjour à tous,

Je veux créer un script qui permet de réaliser ce principe :
Le serveur A se connecte sur le serveur B pour télécharger des fichiers. Jusqu'à là, c'est simple et c'est du classique.
Comme le téléchargement s'effectue sur une grande volumétrie, je voudrais télécharger que les fichiers nouveaux ou modifiés depuis la dernière opération.

Du coup, à chaque fin de l'opération, je crée un fichier témoin avec la date du jour, c'est cette date que je vais utiliser pour comparer sur le serveur B.

Ma question existe t-il une commande (ou combinaison de commandes) qui permet de ne lister que la liste des fichiers ayant une date supérieure à celle stocké sur le serveur A?

Comme les commandes s'exécutent dans le FTP, je n'ai pas réussi à trouver un moyen pour réaliser ce principe

Merci d'avance pour vos idées.
kmdkaci est déconnecté   Envoyer un message privé Réponse avec citation 01
Vieux 04/07/2011, 13h20   #2
Membre Expert
 
Homme
budget et contrôle de gestion
Inscription : décembre 2006
Messages : 895
Détails du profil
Informations personnelles :
Sexe : Homme
Âge : 44
Localisation : France

Informations professionnelles :
Activité : budget et contrôle de gestion
Secteur : Administration - Collectivité locale

Informations forums :
Inscription : décembre 2006
Messages : 895
Points : 1 543
Points : 1 543
Salut,

Citation:
Envoyé par kmdkaci
Ma question existe t-il une commande (ou combinaison de commandes) qui permet de ne lister que la liste des fichiers ayant une date supérieure à celle stocké sur le serveur A?
rsync correspond à ce que tu recherches.
C'est un outil permettant de synchroniser fichiers/répertoires en fonction de divers critères.
Mais peut-être n'est il pas adapté à ta situation.
__________________
Winnt

C'est en Linuxant qu'on devient .... geek

Intel Core i5 750 / 8 Go ram / Hdd 2 To / NVIDIA GeForce GTS 250 1Go sous Gentoo.
Dual core E6300 / 2Go ram / Hdd 1 To / Ati 9800XT sous Debian Testing.
Atom N330 / 4Go ram / Hdd 5To / intel GMA 950 sous Debian Testing

Ici un article de présentation de la distribution Gentoo http://winnt.developpez.com/tutoriel...tation-gentoo/
Winnt est déconnecté   Envoyer un message privé Réponse avec citation 10
Vieux 04/07/2011, 13h39   #3
Expert Confirmé
 
Inscription : janvier 2011
Messages : 970
Détails du profil
Informations personnelles :
Localisation : France, Haute Garonne (Midi Pyrénées)

Informations forums :
Inscription : janvier 2011
Messages : 970
Points : 2 871
Points : 2 871
Salut,

Quid de l'option "newer" de "ftp" ?

Code :
1
2
3
4
5
newer nom-fichier [fichier-local]
     N'obtenir le fichier que si la date de dernière modification du fichier 
     distant est plus récente que celle du fichier présent sur le système local.  
     Si le fichier n'existe pas sur le système local, le fichier distant est considéré 
     être plus récent. Sinon, cette commande est identique à get.
Ou sinon via "lftp" et son option "mirror" :
Code :
1
2
3
4
5
6
7
8
    Mirror specified source directory to local target directory. If target directory 
       ends with a slash, the source base name is  appended  to  target  directory  name.
       Source and/or target can be URLs pointing to directories.

      -n, --only-newer    download only newer files (-c won't work)
      -N, --newer-than=SPEC    download only files newer than specified time
      --older-than=SPEC    download only files older than specified time
__________________
$ man woman
Il n'y a pas de page de manuel pour woman.
zipe31 est déconnecté   Envoyer un message privé Réponse avec citation 01
Vieux 04/07/2011, 17h30   #4
Membre émérite
 
Avatar de kmdkaci
 
Inscription : octobre 2007
Messages : 559
Détails du profil
Informations personnelles :
Localisation : France

Informations forums :
Inscription : octobre 2007
Messages : 559
Points : 815
Points : 815
Envoyer un message via Skype™ à kmdkaci
Merci pour vos réponse.

La commande resync n'est pas adaptée à mes besoins, car l’accès autorisé est le FTP en lecture seule.

La commande mirror ne fonctionne pas non plus, vu qu'il faut installer lftp. Mais comme le serveur nous nous appartient pas, on peut pas utiliser cette commande.

La commande newer semble bien adaptée, mais j'ai le message d'erreur suivant:

Code :
Restart is not supported by the remote server
Et quand je la remplace avec get ça fonctionne. Est ce que vous voyez la source de l'erreur?

Merci
kmdkaci est déconnecté   Envoyer un message privé Réponse avec citation 01
Vieux 04/07/2011, 17h53   #5
Expert Confirmé
 
Inscription : janvier 2011
Messages : 970
Détails du profil
Informations personnelles :
Localisation : France, Haute Garonne (Midi Pyrénées)

Informations forums :
Inscription : janvier 2011
Messages : 970
Points : 2 871
Points : 2 871
Citation:
Envoyé par kmdkaci Voir le message
La commande mirror ne fonctionne pas non plus, vu qu'il faut installer lftp. Mais comme le serveur nous nous appartient pas, on peut pas utiliser cette commande.
Que le serveur (disons B) ne t'appartienne pas c'est un fait, mais qu'en est-il du serveur A ?
Tu ne peux rien installer ni sur l'un ni sur l'autre ?


Citation:
La commande newer semble bien adaptée, mais j'ai le message d'erreur suivant:

Code :
Restart is not supported by the remote server
Et quand je la remplace avec get ça fonctionne. Est ce que vous voyez la source de l'erreur?
Quelle commande tapes-tu exactement ?
__________________
$ man woman
Il n'y a pas de page de manuel pour woman.
zipe31 est déconnecté   Envoyer un message privé Réponse avec citation 01
Vieux 04/07/2011, 18h03   #6
Membre émérite
 
Avatar de kmdkaci
 
Inscription : octobre 2007
Messages : 559
Détails du profil
Informations personnelles :
Localisation : France

Informations forums :
Inscription : octobre 2007
Messages : 559
Points : 815
Points : 815
Envoyer un message via Skype™ à kmdkaci
Tu ne peux rien installer ni sur l'un ni sur l'autre ?
Je suis dans une entreprise où les installations et paramétrage suivent des règles de qualités. J'ai pas de compte admin sur le serveur A, même si c'est notre serveur de travail.

Quelle commande tapes-tu exactement ?

Pour mes testes, je tape ceci :
merci
kmdkaci est déconnecté   Envoyer un message privé Réponse avec citation 01
Vieux 04/07/2011, 18h36   #7
Expert Confirmé
 
Inscription : janvier 2011
Messages : 970
Détails du profil
Informations personnelles :
Localisation : France, Haute Garonne (Midi Pyrénées)

Informations forums :
Inscription : janvier 2011
Messages : 970
Points : 2 871
Points : 2 871
Désolé mais je n'ai aucune idée d'où peut venir cette erreur "Restart is not supported by the remote server"
__________________
$ man woman
Il n'y a pas de page de manuel pour woman.
zipe31 est déconnecté   Envoyer un message privé Réponse avec citation 01
Vieux 04/07/2011, 20h23   #8
Membre du Club
 
Avatar de aysheaia
 
E L
Inscription : juin 2011
Messages : 19
Détails du profil
Informations personnelles :
Nom : E L
Localisation : France

Informations forums :
Inscription : juin 2011
Messages : 19
Points : 62
Points : 62
Citation:
Envoyé par kmdkaci Voir le message
Je suis dans une entreprise où les installations et paramétrage suivent des règles de qualités. J'ai pas de compte admin sur le serveur A, même si c'est notre serveur de travail.
Sans installer d'outil dans les répertoires appartenant à root, tu peux peut-être télécharger les sources de lftp (ou wget qui a aussi une option --mirror) et les compiler dans un répertoire à toi.
aysheaia est déconnecté   Envoyer un message privé Réponse avec citation 01
Vieux 05/07/2011, 13h58   #9
Membre émérite
 
Avatar de kmdkaci
 
Inscription : octobre 2007
Messages : 559
Détails du profil
Informations personnelles :
Localisation : France

Informations forums :
Inscription : octobre 2007
Messages : 559
Points : 815
Points : 815
Envoyer un message via Skype™ à kmdkaci
Je pense que si la commande newer ne fonctionne pas, c'est à cause de l’environnement dur serveur B, il est sous Windows_NT.
kmdkaci est déconnecté   Envoyer un message privé Réponse avec citation 10
Vieux 06/07/2011, 13h34   #10
Membre émérite
 
Avatar de kmdkaci
 
Inscription : octobre 2007
Messages : 559
Détails du profil
Informations personnelles :
Localisation : France

Informations forums :
Inscription : octobre 2007
Messages : 559
Points : 815
Points : 815
Envoyer un message via Skype™ à kmdkaci
Bonjour à tous,
Je viens de tester sur d'autres serveurs Linux, la commande newer fonctionne parfaitement sans paramétrage préalable. Mais quand le serveur cible est Windows_NT j'obtiens le message
Citation:
"Restart is not supported by the remote server "
Je passe le post en résolu

Merci à tous
kmdkaci est déconnecté   Envoyer un message privé Réponse avec citation 10
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 23h13.


 
 
 
 
Partenaires

Hébergement Web