走りたい
something > file
SSH経由でリモートシステムで実行しますが、実行すると
ssh host something > file
リダイレクトは次のようにローカルで行われます。ssh etc > file
'
代わりにorを使って配管しよ''
うとしましたが、うまくいきません。これはどのように達成できますか?dd
|
答え1
努力する:
ssh host 'something > file'
以下は、リダイレクト、パイプ、および引用を処理する方法の人為的なデモです。
ssh host date -d yesterday \| awk "'{print $1}'" \> 'file" "with\ spaces.out'
パイプとリダイレクトは完全な一重引用符セットには含まれず、エスケープされるため、最初のレベルの引用符をエスケープする必要性が減ります。 AWKコマンドの一重引用符は二重引用符で囲まれて保護されています。ファイル名も同じ方法で保護できますが、ここでは一重引用符が二重引用符とエスケープを保護する方法を示します。
答え2
代わりに簡単です:
ssh host something > file
する:
ssh host "something > file"
答え3
提案されたソリューションはパイプにも適用されます。
ssh host 'some_command | some_other_command'