Me gustaria correr
something > file
en un sistema remoto a través de ssh, pero si ejecuto
ssh Host something > file
la redirección se ejecuta localmente como ssh etc > file
Lo he intentado con '
o ''
o dd
o con una tubería |
en cambio, pero no puedo hacer que funcione. ¿Cómo se puede hacer esto?
Tratar:
ssh Host 'something > file'
Aquí hay una demostración artificial de una forma de manejar la redirección, tuberías y citas:
ssh Host date -d yesterday \| awk "'{print $1}'" \> 'file" "with\ spaces.out'
La tubería y la redirección se escapan en lugar de estar contenidas en un conjunto externo de comillas, lo que reduce la necesidad de escapar de un nivel de comillas. Las comillas simples para el comando AWK están protegidas por las comillas dobles que las rodean. El nombre de archivo podría protegerse de la misma manera, pero aquí muestro cómo las comillas simples protegen las comillas dobles y el escape.
Aún más simple, en lugar de:
ssh Host something > file
hacer:
ssh Host "something > file"
La solución sugerida también funciona con tuberías
ssh Host 'some_command | some_other_command'