我需要通过 SFTP 传输大量文件(仅在 Solaris 服务器之间),这需要很长时间。我无法在这段时间内保持 PC 处于打开状态。我尝试过:
nohup sftp 服务器1
当 shell 打开时,我看到文件正在下载。当我关闭 shell 时,它会停止。在 ps -ef 中我看不到 sftp 进程。文件 nohup.out 状态:被信号 15 杀死
如果我改为按 ctrl-z、bg、disown,它就会起作用。但是这需要 bash shell。我更喜欢 ksh 的解决方案。
谢谢。
答案1
- 像往常一样启动你的 sftp 会话:
sftp server1
- Ctrl使用+将其置于后台Z
- 使用以下命令将其与父级断开连接
nohup -ga $(pgrep sftp)
答案2
听起来是个完美的任务GNU 屏幕。
答案3
我自己不使用 KSH,但你尝试过吗:
nohup sftp server1 &
答案4
您不能在脚本中使用 scp 吗?这是非交互式的,因此不需要终端,并且可以与 nohup 配合使用。