我正在尝试记录远程 ssh 命令的输出。
我目前正在使用
ssh USER@IP | tee -a ~/random.log
然后运行我需要在远程服务器上运行的命令,然后将其记录到random.log。
我需要它能够在后台运行,目前当我退出/关闭终端时它就会退出。
我无法登录远程服务器,因为它是一个可用空间很少(>800kb)的路由器。
答案1
您也可以在本地机器上使用屏幕,以防止在关闭终端窗口时停止退出。
screen
在屏幕会话中,
ssh USER@IP | tee -a ~/random.log
如果您不小心关闭了窗口,只需使用screen -r
重新连接即可。请注意,这不会在本地计算机重新启动后继续存在。
答案2
在两个 Linux 机器之间进行了快速测试,似乎运行正常:
ssh USER@IP "command_to_show_router_log" | tee -a (local_copy_filename)
我在“command_to_show_router_log”中使用了“tail -f (logfile)”,但由于您提到这是一个路由器,所以您的语法可能会有所不同。