我正在运行以下命令(其中变量具有 ssh 命令和 $file 的有效值 - 是一个 .sql 文件)。
nohup ssh -qn ${ssh_user}@${dbs} "sqlplus $dbuser/${dbpswd}@${dbname} <<ENDSQL | tee "${sql_run_output_file}".ssh.log
set echo off
set echo on
set timing on
set time on
set serveroutput on size 1000000
@${file}
ENDSQL
"
当我在 ssh 命令之前使用没有“nohup”的上述命令时,大约 1 小时后,我与源服务器(我在其中运行 ssh)的连接收到错误/消息“连接重置 ....”并挂起我的 BASH shell 脚本(其中包含这个 ssh 命令)。当我使用 nohup 时,我没有看到连接问题。
这是我想要得到的,需要你的帮助。
- 更改上面显示的命令,以便该命令不会创建 nohup.out(我是否读过我可以使用 > 而不是 | tee ...并使用 2>&1)
- 我不想运行给出“&”的命令(背景)
- 我确实想要通过 ssh 命令/连接(从源服务器启动)在目标数据库服务器上运行的 sqlplus 会话的 LOG 文件。
谢谢。