如何使用一个ssh两个命令来保存2个不同的文件

时间:2014-10-08 07:30:32

标签: linux bash shell unix ssh

如何使用一个ssh两个命令来保存2个不同的文件。就像一个命令是ps -ef | grep Consumer | cut -f6 -d' '并将此输出保存在file.log中,第二个命令是ps -ef | grep Test | cut -f7 -d' '并将输出保存在test.log中

2 个答案:

答案 0 :(得分:0)

只需要在远程系统上运行ps -ef。解析输出可以在本地系统中进行。

&安培;使用awk可以更轻松。只需要一个ssh session& ps -ef命令快照:

ssh user@host ps -ef | awk -F' ' '/Consumer/{print $6 > "file.log"}; /Test/{print $7 > "test.log"}'
  1. grep+cut可以在awk - '/pattern/{print $n}'
  2. 内发生
  3. awk也可以轻松实现文件重定向。检查上面答案中的语法。

答案 1 :(得分:0)

我宁愿只在远程系统上进行解析,因为ps -ef提供了很大的输出,如果我们不在那里进行解析和切割,那么整个输出就会通过网络从远程系统传输到本地系统。如果输出大小增加,可能需要更多时间。而且我们甚至不需要本地系统上的整个输出,所以最好只在远程系统上解析它。

ssh user @ host ps -ef | grep消费者| cut -f6 -d''> file.log; ps -ef | grep测试| cut -f7 -d''> test.log中