# [ssh] récupérer la sortie d'une commande...[résolu]

## yesi

salut,

je voudrais récupérer sur ma machine locale la sortie d'une commande lancée sur une machine distante:

toto@locale /data # ssh titi@machine_distante "(tar xvf /dev/st0 /chemin/fichier.tgz -O)" | ???

en fait, je voudrais récupérer en état de ce qui sort de ma cassette "tar xvf /dev/st0 /chemin/fichier.tgz" sur une machine distante.

qu'est-ce que je pourrais ajouter après le pipe? cp...?cpio...?dd...?

merci d'avance.Last edited by yesi on Wed Jul 25, 2007 8:20 am; edited 1 time in total

----------

## geekounet

```
# ssh titi@machine_distante tar xvf /dev/st0 /chemin/fichier.tgz -O | blabla
```

Tout simplement. T'étais pas loin  :Wink: 

----------

## yesi

 *geekounet wrote:*   

> 
> 
> ```
> # ssh titi@machine_distante tar xvf /dev/st0 /chemin/fichier.tgz -O | blabla
> ```
> ...

 

justement je cherche ce "blabla"

----------

## geekounet

Ha bah si tu veux afficher la sortie sans traitement postérieur, t'as pas besoin du pipe  :Smile: 

Simplement :

```
# ssh titi@machine_distante tar xvf /dev/st0 /chemin/fichier.tgz -O
```

----------

## gbetous

si tu veux récupérer la sortie dans un fichier, c'est '>' qu'il faut utiliser...

----------

## F!nTcH

+1

Donc je pense que ce topic est clôs  :Wink: 

----------

## yesi

geekounet: en fait j'aurais pas dû ajouter l'option -O

en gros, je voudrais récupérer le fichier compressé (toujours en .tgz) sur la machine distant. 

si tu fais juste:

toto@localhost # ssh titi@machine_distante tar xvf /dev/st0 /chemin/fichier.tgz 

la sortie sera sur "machine_distante"

gbetous : non. la sortie est un fichier compressé 

F!nTcH: t'inquiete! je saurais quand ce sera clos et j'ajouterai "résolu"

----------

## Oupsman

Si je comprends bien tu veux récupérer les données que tu écris sur la cassette et les écrire en même temps ?

Ou récupérer la sortie écran ?

----------

## yesi

non.

je voudrais extraire un fichier compressé de la casette sur une machine distante différente

----------

## geekounet

En général, pour ce genre de chose, je me prend pas la tête, je monte le fs distant en sshfs, et j'opère directement sur les fichiers comme ça. J'arrive très bien à lire un film par cette méthode, donc je suppose qu'un tar doit bien passer aussi.

----------

## yesi

et que serait le système de fichier d'une casette...?

ce n'est pas très compliqué ici, il faut juste le savoir...

et ça m'intéresse de le savoir... :Smile: 

ssh titi@machine_distante tar xvf /dev/st0 /chemin/fichier.tgz -O | command

command= copier la sortie de la commande précédente vers un répertoire...= ??

----------

## Bapt

Pourquoi tu ne passe pas par nbd ? (Network Block Device)

Sur la machine qui a le lecteur : 

```
nbd-server 1234 /dev/st0
```

Su l'autre machine : 

```
nbd-client server 1234 /dev/nb0 

tar xvf /dev/nb0 /chemin/fichier.tgz

```

Un truc du genre a adapter.

----------

## yesi

parce que je ne connaissais pas, tiens!  :Smile: 

et maintenant je vais le connaître...

ps: mon sysresccd n'a pas ça...

pss: c'est une machine Windows évidemment...Last edited by yesi on Tue Jul 24, 2007 4:54 pm; edited 1 time in total

----------

## F!nTcH

 *yesi wrote:*   

> geekounet: en fait j'aurais pas dû ajouter l'option -O
> 
> en gros, je voudrais récupérer le fichier compressé (toujours en .tgz) sur la machine distant. 
> 
> si tu fais juste:
> ...

 

Vui chef !   :Wink: 

----------

## gbetous

 *yesi wrote:*   

> gbetous : non. la sortie est un fichier compressé 

 

t'as essayé ? tout passe par la sortie standard, pas forcément de l'ascii... non ???

----------

## yesi

toto@locale /data # ssh titi@machine_distante "(tar xvf /dev/st0 /chemin/fichier.tgz -O)" | dd of=fichier.tgz

prise de tête pour rien...

la solution était devant moi...

----------

