在后台运行SCP并监视进度

我在后台运行一个scp命令:

  nohup scp file.gz root@target-host:/root/ > nohup.out 2>&1 

我input密码 – 我按ctrl-z停止命令,并重新启动它,我可以通过执行jobs确认它正在运行。 然而,有没有一种方法来监视文件传输的进度(即如果我将它运行而不放置在后台)?

谢谢。

您可以使用屏幕(1)或类似的,而不是bg。

然后你可以控制广告分离和屏幕-d -r重新附加。

您也可以根据需要注销并重新连接,而不会丢失重新连接的能力,所以在不可靠的网络上它是非常棒的。 它可以追溯到人们在调制解调器和之前做Slip和PPP的时候。

在运行CentOS / Red Hat / Fedora时,我只需使用:

 ps aux | grep scp 

检查运行的scp进程。 要看看他们是否在做什么,我喜欢用:

 du -s -c -h * 

如果您位于AWS EC2 ,则可以切换到实例以监视启动卷上的网络和r / w操作。 要查看其他驱动器在做什么,请切换到“卷”部分的“监控”选项卡,然后选择一个卷。

也许你可以将STDERR重定向到文件并使用tail -f来监视它

您可以使用屏幕(1)或类似的,而不是bg。

然后你可以控制广告分离和屏幕-d -r重新附加。

您也可以根据需要注销并重新连接,而不会丢失重新连接的能力,所以在不可靠的网络上它是非常棒的。 它可以追溯到人们在串口调制解调器上使用Slip和PPP的时候。

你可以使用watch tail nohup.out

您可以使用tail命令查看nohup.out的输出。 只要在终端上写下下面的命令。

尾巴-n 10 -f nohup.out

-n 10显示内容末尾的行数。

-f告诉命令遵循nohup.out。 显示执行命令后将要写入文件的每个内容。