Eu gostaria de correr
something > file
em um sistema remoto através do ssh, mas se eu executar
ssh host something > file
o redirecionamento é executado localmente como ssh etc > file
Eu tentei com '
ou ''
ou dd
com um cachimbo |
, mas não consigo fazê-lo funcionar. Como isso pode ser feito?
ssh
pipe
io-redirection
Franziskus
fonte
fonte
Respostas:
Experimentar:
Aqui está uma demonstração artificial de uma maneira de lidar com redirecionamentos, canais e cotações:
O canal e o redirecionamento são escapados em vez de contidos em um conjunto externo de cotações, reduzindo a necessidade de escapar de um nível de cotações. As aspas simples para o comando AWK são protegidas pelas aspas duplas que as cercam. O nome do arquivo pode ser protegido da mesma maneira, mas aqui mostro como as aspas simples protegem as aspas duplas e a fuga.
fonte
sh -c
parte.$1
está protegido de ser visto pelo shell como uma variável do shell. Mas não seria se a ordem das aspas fosse oposta.Ainda mais simples, em vez de:
Faz:
fonte
A solução sugerida também funciona com tubos
fonte