我想运行以下 rsync 命令将文件夹从远程服务器传输到我当前的服务器。sudo -r -a -v -e 'ssh -p portnum' username@serverip:/home/path/* /home/path
此目录的大小和结构都相当大,传输需要一些时间。我不想让计算机一直处于打开状态并打开 PuTTY 窗口,而是想运行一个命令,该命令在我关闭窗口并关闭 PC 后继续执行。
我尝试过使用前缀,nohup
但没有效果。我还有什么其他选择?
答案1
在命令中运行GNU 屏幕。 基本上:
- 安装屏幕:
$ sudo apt-get install screen
- 运行屏幕:
$ screen
...此时,您将拥有一个在屏幕内运行的shell。 - 运行您的命令。
- 按Ctrl- A,d,这将使您脱离屏幕会话并且您的命令将继续运行。
当你想要重新连接时,只需以拥有屏幕会话的用户身份通过 ssh 登录,然后:
$ screen -RD
答案2
您可以安装并运行像 screen 这样的程序,或者将该命令放入 bash 脚本中并在 cron 上运行一次。