如何在bash中将远程脚本的输出传递到本地脚本

如何在bash中将远程脚本的输出传递到本地脚本,bash,logging,echo,output,Bash,Logging,Echo,Output,我有一个bash脚本,它自动连接到远程位置,并运行另一个存储在远程位置的脚本。在远程位置上的脚本中,我希望让我的自动连接脚本(存储在本地pc上)捕获从远程脚本回显的特定输出,以便将其存储在单独的日志中。我知道需要在重定向输出的远程脚本上放置一些东西,以便本地脚本能够捕获它,我只是不确定该去哪里。谢谢你的帮助 在本地脚本的ssh行中,可以使用tee将一些输出重定向到文件: ssh ... | tee -a output.log 如果要筛选哪个文件会转到output.log文件,可以使用进程替换:

我有一个bash脚本,它自动连接到远程位置,并运行另一个存储在远程位置的脚本。在远程位置上的脚本中,我希望让我的自动连接脚本(存储在本地pc上)捕获从远程脚本回显的特定输出,以便将其存储在单独的日志中。我知道需要在重定向输出的远程脚本上放置一些东西,以便本地脚本能够捕获它,我只是不确定该去哪里。谢谢你的帮助

在本地脚本的ssh行中,可以使用
tee将一些输出重定向到文件:

ssh ... | tee -a output.log
如果要筛选哪个文件会转到output.log文件,可以使用进程替换:

ssh .... | tee >(grep "Some things you want to filter." >> output.log)

除了grep,您还可以使用其他命令,如awk。

谢谢您提供的信息。我正在使用本地脚本中已有的tee命令将整个输出回显到日志中。但是,我需要捕获某些输出以存储在错误日志中。我喜欢使用grep的想法,但是我必须自定义输出以包含某个关键字。这是我最初的想法,但我想看看是否有更好的方法来做这件事。