Redirecionar descritor de arquivo da máquina remota para a máquina local

1

Suponha que eu tenha o seguinte script em execução em um host remoto:

$ cat remote_script
#!/bin/bash

exec 3>file.log

echo "Output to stdout"
echo "Output to stderr" >&2
echo "Output to fd3 >&3

Quando esse script for executado na máquina remota, ele redirecionará fd3 para um arquivo na máquina remota. Quando me conecto via ssh ao controle remoto e executo o script

$ ssh user@remote_host "./remote_script"

, então, posso ver a saída de stdin e stderr na máquina local. A saída de fd3 , no entanto, ainda vai para o arquivo na máquina remota.

Existe alguma maneira de redirecionar fd3 para ver sua saída na máquina local e ainda ser capaz de distingui-la de stdout ?

Eu já tentei

$ cat remote_script
#!/bin/bash

exec 3>&1
...

$ ssh user@remote_host "./remote_script" 3>local.file.log

mas isso gera apenas um arquivo vazio na máquina local, ou seja, não consigo separar fd3 de stdout

    
por nautical 06.01.2018 / 19:37

0 respostas