在ssh上重定向stdout

时间:2012-03-06 14:20:51

标签: ssh

我想将sed命令的输出重定向到.txt文件(在远程服务器中),代码如下:

ssh -p XXYY -l root $remoteIP | sed '/keyword/d' /etc/fileA > /etc/fileA_temp

我想更新一个txt文件,删除包含特定关键字的所有行,并将其保存在同一个文件中或复制后我可以保存的地方

代码的第一部分按需回复:

ssh -p XXYY -l root $remoteIP | sed '/keyword/d' /etc/fileA 

但是line命令中的输出表示'权限被拒绝'到'fileA_temp'文件并显示有关ssh选项的所有信息...因此我认为'ssh '不允许以某种方式更新文件。

编辑:在远程服务器内部,当我尝试时它可以工作:

sed '/keyword/d' /etc/fileA > /etc/fileA_temp

但是当我在bash脚本中运行时,控制台说'权限被拒绝'

非常感谢

1 个答案:

答案 0 :(得分:1)

为什么要将ssh的输出汇总到你当地的sed?

试试这个:

ssh -p XXYY -l root $remoteIP "sed '/keyword/d' /etc/fileA > /etc/fileA_temp"