Bonjour,
Je suis sur une machine A (unix) j'ai un acces ssh sur une machine B
(unix like)
je veux transferer des fichiers de B vers A (et vice versa)
Solution bete et mechante :
Il se trouve que j'ai un acces ftp sur A depuis B. J'ouvre une session
ssh sur B et je transfere avec un client ftp. Je trouve cette solution
peu satisfaisante.
Quelles autres solutions puis-je mettre en oeuvre ?
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
Kevin Denis
Le 03-10-2006, Yves Lambert a écrit :
Bonjour, Je suis sur une machine A (unix) j'ai un acces ssh sur une machine B (unix like) je veux transferer des fichiers de B vers A (et vice versa)
Quelles autres solutions puis-je mettre en oeuvre ?
sftp
sftp> help Available commands: cd path Change remote directory to 'path' lcd path Change local directory to 'path' chgrp grp path Change group of file 'path' to 'grp' chmod mode path Change permissions of file 'path' to 'mode' chown own path Change owner of file 'path' to 'own' help Display this help text get remote-path [local-path] Download file lls [ls-options [path]] Display local directory listing ln oldpath newpath Symlink remote file lmkdir path Create local directory lpwd Print local working directory ls [path] Display remote directory listing lumask umask Set local umask to 'umask' mkdir path Create remote directory progress Toggle display of progress meter put local-path [remote-path] Upload file pwd Display remote working directory exit Quit sftp quit Quit sftp rename oldpath newpath Rename remote file rmdir path Remove remote directory rm path Delete remote file symlink oldpath newpath Symlink remote file version Show SFTP version !command Execute 'command' in local shell ! Escape to local shell ? Synonym for help sftp>
ou scp. -- Pour connaitre ce qu'est la recursivite, il faut commencer par connaitre la recursivite.
Le 03-10-2006, Yves Lambert <7355p4mm3ur550ntd35c0n5@bidart.net> a écrit :
Bonjour,
Je suis sur une machine A (unix) j'ai un acces ssh sur une machine B
(unix like)
je veux transferer des fichiers de B vers A (et vice versa)
Quelles autres solutions puis-je mettre en oeuvre ?
sftp user@B
sftp> help
Available commands:
cd path Change remote directory to 'path'
lcd path Change local directory to 'path'
chgrp grp path Change group of file 'path' to 'grp'
chmod mode path Change permissions of file 'path' to
'mode'
chown own path Change owner of file 'path' to 'own'
help Display this help text
get remote-path [local-path] Download file
lls [ls-options [path]] Display local directory listing
ln oldpath newpath Symlink remote file
lmkdir path Create local directory
lpwd Print local working directory
ls [path] Display remote directory listing
lumask umask Set local umask to 'umask'
mkdir path Create remote directory
progress Toggle display of progress meter
put local-path [remote-path] Upload file
pwd Display remote working directory
exit Quit sftp
quit Quit sftp
rename oldpath newpath Rename remote file
rmdir path Remove remote directory
rm path Delete remote file
symlink oldpath newpath Symlink remote file
version Show SFTP version
!command Execute 'command' in local shell
! Escape to local shell
? Synonym for help
sftp>
ou scp.
--
Pour connaitre ce qu'est la recursivite, il faut commencer par connaitre
la recursivite.
Bonjour, Je suis sur une machine A (unix) j'ai un acces ssh sur une machine B (unix like) je veux transferer des fichiers de B vers A (et vice versa)
Quelles autres solutions puis-je mettre en oeuvre ?
sftp
sftp> help Available commands: cd path Change remote directory to 'path' lcd path Change local directory to 'path' chgrp grp path Change group of file 'path' to 'grp' chmod mode path Change permissions of file 'path' to 'mode' chown own path Change owner of file 'path' to 'own' help Display this help text get remote-path [local-path] Download file lls [ls-options [path]] Display local directory listing ln oldpath newpath Symlink remote file lmkdir path Create local directory lpwd Print local working directory ls [path] Display remote directory listing lumask umask Set local umask to 'umask' mkdir path Create remote directory progress Toggle display of progress meter put local-path [remote-path] Upload file pwd Display remote working directory exit Quit sftp quit Quit sftp rename oldpath newpath Rename remote file rmdir path Remove remote directory rm path Delete remote file symlink oldpath newpath Symlink remote file version Show SFTP version !command Execute 'command' in local shell ! Escape to local shell ? Synonym for help sftp>
ou scp. -- Pour connaitre ce qu'est la recursivite, il faut commencer par connaitre la recursivite.
Mehdi BENKIR
Yves Lambert wrote:
Bonjour, Je suis sur une machine A (unix) j'ai un acces ssh sur une machine B (unix like) je veux transferer des fichiers de B vers A (et vice versa)
Solution bete et mechante :
Il se trouve que j'ai un acces ftp sur A depuis B. J'ouvre une session ssh sur B et je transfere avec un client ftp. Je trouve cette solution peu satisfaisante.
Quelles autres solutions puis-je mettre en oeuvre ?
merci pour les tuyaux.
Quelque chose comme (syntaxe à ajuster selon contexte) :
aprompt$ cd $directory2 ; ssh tar -cf - $directory1/ | tar -xf -
aprompt$ cd $directory2 ; tar -cf - . | ssh ( cd $directory1 && tar -xf - )
Yves Lambert wrote:
Bonjour,
Je suis sur une machine A (unix) j'ai un acces ssh sur une machine B
(unix like)
je veux transferer des fichiers de B vers A (et vice versa)
Solution bete et mechante :
Il se trouve que j'ai un acces ftp sur A depuis B. J'ouvre une session
ssh sur B et je transfere avec un client ftp. Je trouve cette solution
peu satisfaisante.
Quelles autres solutions puis-je mettre en oeuvre ?
merci pour les tuyaux.
Quelque chose comme (syntaxe à ajuster selon contexte) :
aprompt$ cd $directory2 ; ssh yuser@b tar -cf - $directory1/ | tar -xf -
aprompt$ cd $directory2 ; tar -cf - . | ssh yuser@b ( cd $directory1 &&
tar -xf - )
Bonjour, Je suis sur une machine A (unix) j'ai un acces ssh sur une machine B (unix like) je veux transferer des fichiers de B vers A (et vice versa)
Solution bete et mechante :
Il se trouve que j'ai un acces ftp sur A depuis B. J'ouvre une session ssh sur B et je transfere avec un client ftp. Je trouve cette solution peu satisfaisante.
Quelles autres solutions puis-je mettre en oeuvre ?
merci pour les tuyaux.
Quelque chose comme (syntaxe à ajuster selon contexte) :
aprompt$ cd $directory2 ; ssh tar -cf - $directory1/ | tar -xf -
aprompt$ cd $directory2 ; tar -cf - . | ssh ( cd $directory1 && tar -xf - )
Yves Lambert
Mehdi BENKIR wrote: (je simplifie l'écriture)
$ cd d2 ; ssh tar -cf - d1/ | tar -xf -
d1 sans '/' sinon ça ne marche pas (SunOS) : message d'erreur surprenant tar: d1/: No such file or directory. Apparemment tar considère que '/' fait partie du nom du fichier
Cette méthode me semble plus sûre.
Depuis 'B' (je suis rentré chez moi) :
$ cp -r ~/d1/* ~/d2/ # l'arborescence de d1 est reproduite dans d2 $ scp -r :~/d1/* ~/d1 # ça fait tout autre chose :(
Apparemment, (la structure de 'd1' était simple) les fichiers des sous-répertoires de d1 se retrouvent au premier niveau à la destination. C'est très gênant...
Conclusion : l'emploi de sftp ou la méthode proposée par Mehdi me semblent préférable.
Pour recopier une arborescence ce que propose Mehdi est plus naturel, de plus j'ai bien scp et sftp sous linux, pas sûr du tout d'en disposer sous irix ou SunOs.
$ cd $d2 ; tar -cf - . | ssh ( cd d1 && tar -xf - )
bash n'aime pas ces parenthèses : bash: syntax error near unexpected token `(' J'essaie plus simple :
$ tar -cf - d2|ssh tar -xf - ça marche : le répertoire d2 est créé (probleme : le répertoire est créé sur ~yuser/)
résumé :
$ tar -cf - d1|ssh tar -xf - # pour copier d1 vers 'b' $ ssh tar -cf - d1 | tar -xf - # pour récupérer d1 depuis 'b'
-- Est il possible que les participants, sauf les nouveaux mais y en a pas du tout puissent annoncer leur rang sur USENET de manière à leur répondre d'une manière adaptée, s'il vous plait.
Mehdi BENKIR wrote:
(je simplifie l'écriture)
$ cd d2 ; ssh yuser@b tar -cf - d1/ | tar -xf -
d1 sans '/' sinon ça ne marche pas (SunOS) : message d'erreur surprenant
tar: d1/: No such file or directory.
Apparemment tar considère que '/' fait partie du nom du fichier
Cette méthode me semble plus sûre.
Depuis 'B' (je suis rentré chez moi) :
$ cp -r ~/d1/* ~/d2/ # l'arborescence de d1 est reproduite dans d2
$ scp -r user@a:~/d1/* ~/d1 # ça fait tout autre chose :(
Apparemment, (la structure de 'd1' était simple) les fichiers des
sous-répertoires de d1 se retrouvent au premier niveau à la destination.
C'est très gênant...
Conclusion : l'emploi de sftp ou la méthode proposée par Mehdi me
semblent préférable.
Pour recopier une arborescence ce que propose Mehdi est plus naturel,
de plus j'ai bien scp et sftp sous linux, pas sûr du tout d'en disposer
sous irix ou SunOs.
$ cd $d2 ; tar -cf - . | ssh yuser@b ( cd d1 && tar -xf - )
bash n'aime pas ces parenthèses :
bash: syntax error near unexpected token `('
J'essaie plus simple :
$ tar -cf - d2|ssh yuser@b tar -xf -
ça marche : le répertoire d2 est créé (probleme : le répertoire est créé
sur ~yuser/)
résumé :
$ tar -cf - d1|ssh yuser@b tar -xf - # pour copier d1 vers 'b'
$ ssh yuser@b tar -cf - d1 | tar -xf - # pour récupérer d1 depuis 'b'
--
Est il possible que les participants, sauf les nouveaux mais y en a pas
du tout puissent annoncer leur rang sur USENET de manière à leur
répondre d'une manière adaptée, s'il vous plait.
d1 sans '/' sinon ça ne marche pas (SunOS) : message d'erreur surprenant tar: d1/: No such file or directory. Apparemment tar considère que '/' fait partie du nom du fichier
Cette méthode me semble plus sûre.
Depuis 'B' (je suis rentré chez moi) :
$ cp -r ~/d1/* ~/d2/ # l'arborescence de d1 est reproduite dans d2 $ scp -r :~/d1/* ~/d1 # ça fait tout autre chose :(
Apparemment, (la structure de 'd1' était simple) les fichiers des sous-répertoires de d1 se retrouvent au premier niveau à la destination. C'est très gênant...
Conclusion : l'emploi de sftp ou la méthode proposée par Mehdi me semblent préférable.
Pour recopier une arborescence ce que propose Mehdi est plus naturel, de plus j'ai bien scp et sftp sous linux, pas sûr du tout d'en disposer sous irix ou SunOs.
$ cd $d2 ; tar -cf - . | ssh ( cd d1 && tar -xf - )
bash n'aime pas ces parenthèses : bash: syntax error near unexpected token `(' J'essaie plus simple :
$ tar -cf - d2|ssh tar -xf - ça marche : le répertoire d2 est créé (probleme : le répertoire est créé sur ~yuser/)
résumé :
$ tar -cf - d1|ssh tar -xf - # pour copier d1 vers 'b' $ ssh tar -cf - d1 | tar -xf - # pour récupérer d1 depuis 'b'
-- Est il possible que les participants, sauf les nouveaux mais y en a pas du tout puissent annoncer leur rang sur USENET de manière à leur répondre d'une manière adaptée, s'il vous plait.
manu
Yves Lambert wrote:
$ cd $d2 ; tar -cf - . | ssh ( cd d1 && tar -xf - )
bash n'aime pas ces parenthèses : bash: syntax error near unexpected token `('
Faut pas y mettre des quotes, pour que toute la comande soit envoyée en face?
cd $d2 ; tar -cf - . | ssh '( cd d1 && tar -xf - )'