在使用wget命令下载较大文件的时候,通常会碰到以下问题:
- 直接运行下载命令,则会有一个terminal窗口长时间被占用,窗口关闭或是电脑关闭则下载任务终止;
- 有一个解决办法,那就是通过加参数-b让下载任务在后台运行,但是这需要写一个wget-log文件,用于存储下载进度的log,所以,当文件特别打的时候,这个log文件会非常大。如果删除,则会无法查看下载进度。
有一种方法可以较好地解决以上问题:
-
创建一个screen并命名为session_name,然后就会进入这个screen
$screen -S session_name
-
在这个screen里面直接运行下载任务
$wget download-link
-
组合键 Ctrl+A+D 退出当前screen,返回主terminal
Ctrl + A +D
-
进入指定的screen查看下载进度
$screen -r your_name
-
回到主terminal,退出,关机,下次登录terminal 时可通过一下命令查询已有的screen,会发现之前的任务仍然在。当然,有一个很重要的前提那就是服务器不会关机,如果在你退出terminal之后,服务器关机,则所有的screen会随之关闭,再打开则不会存在之前的下载任务。
-
kill掉screen,两种方法
-
[1] screen -S session_name -X qiut
-
[2]先激活screen,
screen -r session_name
然后利用exit退出并kill掉session