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 comme ssh etc > file
Je l'ai essayé avec '
ou ''
ou dd
ou avec une pipe à la |
place, mais je ne peux pas le faire fonctionner. Comment cela peut-il être fait?
ssh
pipe
io-redirection
franziskus
la source
la source
Réponses:
Essayer:
Voici une démonstration artificielle d'un moyen de gérer la redirection, les tuyaux et les citations:
Le canal et la redirection sont échappés au lieu d'être contenus dans un ensemble externe de guillemets, ce qui réduit le besoin d'échapper à un niveau de guillemets. Les guillemets simples pour 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.
la source
sh -c
partie.$1
est protégé contre le fait d'être vu par le shell en tant que variable de shell. Mais ce ne serait pas si l'ordre des citations était opposé.Encore plus simple, au lieu de:
faire:
la source
La solution suggérée fonctionne également avec les tuyaux
la source