我想从不同的虚拟机获取特定文件并将其附加到单个文件中。我尝试过这样
scp admin@data-1:/var/log/elasticsearch/cluster.log /home/itadmin/logstash/logstash-2.4.1/slowlogs.log
scp admin@data-2:/var/log/elasticsearch/cluster.log /home/itadmin/logstash/logstash-2.4.1/slowlogs.log
但问题是它覆盖了文件。我怎样才能以同样的方式附加它?
谢谢
答案1
您可以使用临时文件并分两步执行此操作,如下所示:
scp admin@data-1:/var/log/elasticsearch/cluster.log /tmp/x; cat /tmp/x >> destinationfile.log
或者像ssh
这样使用cat
ssh admin@data-1 cat /var/log/elasticsearch/cluster.log >> destinationfile.log
第二种方法是可行的,因为 ssh 的构建是为了让你能够在远程机器上运行命令。在本例中,我们cat
在远程机器上运行所需的文件,然后收集本地输出。