Je voudrais courir
something > file
sur un système distant via ssh, mais si je lance
ssh host something > file
la redirection est exécutée localement en tant que fichier ssh etc > file
J'ai essayé avec '
ou ''
ou dd
ou avec un tuyau |
à la place, mais je n'arrive pas à le faire fonctionner. Comment cela peut-il être fait ?
Réponse acceptée :
Essayez :
ssh host 'something > file'
Voici une démonstration artificielle d'une manière de gérer la redirection, les canaux et les citations :
ssh host date -d yesterday | awk "'{print $1}'" > 'file" "with spaces.out'
Le canal et la redirection sont échappés plutôt que d'être contenus dans un ensemble externe global de guillemets, ce qui réduit le besoin d'échapper à un niveau de guillemets. Les guillemets simples de la commande AWK sont protégés par les guillemets doubles qui les entourent. Le nom de fichier pourrait être protégé de la même manière, mais ici je montre comment les guillemets simples protègent les guillemets doubles et l'échappement.