Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

lftp et "mirror"

6 réponses
Avatar
Mihamina Rakotomandimby
Bonjour,
Juste une question dont je n'ai pas trouvé la réponse en cherchant un
peu: Pourquoi est-ce que lftp doit recourir à une commande mirror pour
faire un GET ou un PUT d'une arborescence? PUT et GET fonctionnent mais
pour un fichier. Si on veut "se taper" une arborescence, il faut
alourdir la syntaxe avec "mirror".
Est-ce une raison historique? technique?...

--
Huile Essentielle de Camphre http://www.huile-camphre.fr
Infogerance http://www.infogerance.us
(Serveurs, Postes de travail, Développement logiciel)

6 réponses

Avatar
Stephane Chazelas
2008-03-04, 12:10(+03), Mihamina Rakotomandimby:
Juste une question dont je n'ai pas trouvé la réponse en cherchant un
peu: Pourquoi est-ce que lftp doit recourir à une commande mirror pour
faire un GET ou un PUT d'une arborescence? PUT et GET fonctionnent mais
pour un fichier. Si on veut "se taper" une arborescence, il faut
alourdir la syntaxe avec "mirror".
Est-ce une raison historique? technique?...
[...]


Ben get est la commande historique de ftp pour retriever des
fichiers. Et mirror est la commande pour faire un mirror (dans
un sens ou dans l'autre) d'une arborescence. C'est deux choses
assez differentes.

Bien sur, get et put auraient pu etre surchargees avec des
options supplementaires pour faire la meme chose. Mais je
prefere utiliser "mirror" plutot que de devoir me rappeler la
douzaine d'options qu'il faudrait passer a put ou get (pour
preserver ownership, permissions, recursive, continuous...).

Quel est le probleme exactement ?

--
Stéphane

Avatar
Matthieu Moy
Stephane Chazelas writes:

Ben get est la commande historique de ftp pour retriever des
fichiers. Et mirror est la commande pour faire un mirror (dans
un sens ou dans l'autre) d'une arborescence. C'est deux choses
assez differentes.


Oui, mais justement, quand je veux télécharger toute une arborescence
depuis un site ftp, mon cerveau pense « get », et la commande « get »
n'est d'aucune aide pour télécharger tout un répertoire avec lftp.
Alors que justement, la commande « mirror » permet de le faire.

Perso, je me serais attendu à avoir une commande genre « get -R » (ce
que fait ncftp par exemple).

--
Matthieu

Avatar
Mihamina Rakotomandimby
Stephane Chazelas wrote:
Bien sur, get et put auraient pu etre surchargees avec des
options supplementaires pour faire la meme chose. Mais je
prefere utiliser "mirror" plutot que de devoir me rappeler la
douzaine d'options qu'il faudrait passer a put ou get (pour
preserver ownership, permissions, recursive, continuous...).
Quel est le probleme exactement ?



Non, non... Il n'y a pas vraiment de problème (je ne viens pas discuter
que de problème, ici). Juste une "petite" interrogation:
Pourquoi n'ont-ils (les développeur de lftp) pas mis une option -R (par
exemple) aux GET et PUT pour dire qu'on veut faire du recursif?
C'est assez intuitif (oui c'est relatif) car sur beaucoup d'utilitaires
de copie (scp et cp entre autres) on met -r pour faire recursif.
Et ncftp a cette option aussi (oui, mais je veux utiliser lftp).

--
Huile Essentielle de Camphre http://www.huile-camphre.fr
Infogerance http://www.infogerance.us
(Serveurs, Postes de travail, Développement logiciel)

Avatar
Stephane Chazelas
2008-03-04, 16:37(+01), Matthieu Moy:
Stephane Chazelas writes:

Ben get est la commande historique de ftp pour retriever des
fichiers. Et mirror est la commande pour faire un mirror (dans
un sens ou dans l'autre) d'une arborescence. C'est deux choses
assez differentes.


Oui, mais justement, quand je veux télécharger toute une arborescence
depuis un site ftp, mon cerveau pense « get », et la commande « get »
n'est d'aucune aide pour télécharger tout un répertoire avec lftp.
Alors que justement, la commande « mirror » permet de le faire.

Perso, je me serais attendu à avoir une commande genre « get -R » (ce
que fait ncftp par exemple).


Oui, mais alors, -R serait un shortcut pour -r (recursive) -p
(preserve permissions) -o (preserve ownership) -d (delete local
files if they are not in the remote directory) -l (reconstruct
symlinks instead of just getting the files)... ?


--
Stéphane


Avatar
Matthieu Moy
Stephane Chazelas writes:

Perso, je me serais attendu à avoir une commande genre « get -R » (ce
que fait ncftp par exemple).


Oui, mais alors, -R serait un shortcut pour -r (recursive) -p
(preserve permissions) -o (preserve ownership) -d (delete local
files if they are not in the remote directory) -l (reconstruct
symlinks instead of just getting the files)... ?


Ben non, -R serait juste pour « recursive ». Appelle-là -r si tu
préfères.

--
Matthieu


Avatar
Cyrille Lefevre
2008-03-04, 12:10(+03), Mihamina Rakotomandimby:
Juste une question dont je n'ai pas trouvé la réponse en cherchant un
peu: Pourquoi est-ce que lftp doit recourir à une commande mirror po ur
faire un GET ou un PUT d'une arborescence? PUT et GET fonctionnent mai s
pour un fichier. Si on veut "se taper" une arborescence, il faut
alourdir la syntaxe avec "mirror".
Est-ce une raison historique? technique?...
[...]


Ben get est la commande historique de ftp pour retriever des
fichiers. Et mirror est la commande pour faire un mirror (dans
un sens ou dans l'autre) d'une arborescence. C'est deux choses
assez differentes.


pour mémoire, la commande mget accepte un répertoire comme paramètr e.
s'il s'agit de ., pas de pbs, sinon, il faut que le répertoire local
existe auparavant. pour autant, cette commande n'est pas récursive.

par ex. :

distant => . contient toto, tata contient titi et tutu.
local => mkdir tata
"mget ." recopie toto en local (dans . pour ceux qui ne suivent pas :)
(je ne sais plus ce qu'il se passe pour tata)
"mget tata" recopie le contenu de tata (titi et tutu pour ceux qui
suivent :) dans le répertoire tata local qui doit exister.


Cordialement,

Cyrille Lefevre.
--
mailto:Cyrille.Lefevre-news%
supprimer "%nospam% et ".invalid" pour me repondre.
remove "%nospam" and ".invalid" to answer me.