`
javan
  • 浏览: 57260 次
社区版块
存档分类
最新评论

wget使用

阅读更多

wget是一個命令行工具,用於批量下載文件,支持HTTP和FTP。究竟比其他的工具好在哪裡?看看內容吧 :)

wget基本上所有的Linux版本都自己帶了,但是有多少人在用呢?呵呵,如果你沒有用過,不妨試試。Windows下面的用戶可以使用GNUwin32的項目,wget,基本功能完全一致。好吧,我們來以幾個簡單的例子看看wget的威力。

如果我們想下載ftp裏面某個目錄裏面的所有文件,我們也可以不用ftp這個笨蛋,呵呵,可以享受cute ftp等圖形化工具的拖一個目錄的輕鬆了。如

wget -r ftp://10.8.8.8/movie/

呵呵,等吧!下完了,發覺有些不對勁,怎麼出來個10.8.8.8的目錄,進去看看,又是一個movie,哦,wget將目錄結構和網站標題都給記錄下來了,不要??沒有問題!比如說還是這個例子

wget -r -nd ftp://10.8.8.8/movie/

結果什麼目錄都沒有了,faint!怎麼會這樣?呵呵,你如果想要這樣就讓它這樣吧,否則使用

wget -r -nH ftp://10.8.8.8/movie/

恩?movie也不要?OK,那就這樣

wget -r -nH --cut-dirs=1 ftp://10.8.8.8/movie/

這有什麼用啊?cuteftp比他好用多了,而且,你這斷了線能連嗎?呵呵,不好意思,可以連

wget -c -r -nH --cut-dirs=1 ftp://10.8.8.8/movie/

但是cuteftp能做下面的事情嗎?比如,現在很多網站使用Apache建站,並不提供ftp服務,但是Apache有一個indexing功能,可以提供一個類似於ftp的界面,好多文件我想下啊,怎麼辦?由於是HTTP協議,CuteFTP無能為力了,倒是flash get等有什麼get all這種功能,不知道他們對於目錄處理怎麼樣。但是wget一點問題都沒有,不信?我們拿CTAN為例(例子並不恰當,CTAN有FTP服務),我們下載這裏面所有的宏包,呵呵

wget -r -k http://www.ctan.org/tex-archive/macros/latex/

-k表示將連接轉換為本地連接。但是現在同樣有上面的問題啊,那就把你需要的加上吧,另外也許你根本不需要向下走那麼多層,比如,我們就要到第二層,那麼

wget -r -l2 -k http://www.ctan.org/tex-archive/macros/latex/

現在新的問題是,由於網頁有一個排序功能,很討厭,因為下載的時候把網頁重複了好多次,那麼我們可使用-A和-R開關控制下載類型,並且可以使用通配符,呵呵,現在隨心所欲了吧

wget -r -R ".htm\?*" -k http://www.ctan.org/tex-archive/macros/latex/

這次沒有那種網頁了吧?-R的意義在於拒絕下載匹配類型的文件,-A表示僅僅接受的文件類型,如-A "*.gif"將僅下載gif圖片,如果有多個允許或者不允許,可以使用,分開。

那麼,我們現在在使用代理伺服器,怎麼辦呢?呵呵,很高興你選擇了wget,你可以使用它的配置文件,環境變數來利用代理。這裏推薦使用環境變數,如在 bash裏面我們可以把天天用的proxy加到.bash_profile裏面,這是Linux標準寫法(很多軟體都用的,什麼apt-get,yum等等)

export http_proxy=http://10.20.30.40:8080

然後,proxy就默認打開了,如果需要暫時關閉,可以使用

wget --proxy=off -r -k http://www.ctan.org/tex-archive/macros/latex/

當然,寫一個.wgetrc文件也可以,該文件可以從/usr/local/etc裏面找到,裏面有很詳細的註釋,我就不多說了。

下載網頁的時候比較麻煩的事情是,有的網頁被同時指向了很多遍,那麼為了避免多次下載,我們使用

wget -nc -r -k http://www.ctan.org/tex-archive/macros/latex/

可以避免這件事情。為了不被有的連接指向非http://www.ctan.org/tex-archive/macros/latex/ 內層目錄,我們還應該加上

wget -nc -np -r -k http://www.ctan.org/tex-archive/macros/latex/

避免下載非該目錄裏面的文件,這也避免了到不同的host上面去。當然,如果你希望有這個功能,在多個host之間跳來跳去的下載,可以使用

wget -nc -np -H -r -k http://www.ctan.org/tex-archive/macros/latex/

使得可以在多個host之間span,同時-I和-X可以使得我們僅僅跟蹤某些目錄或者不跟蹤某些目錄。如果某些HTML裏面你需要的東西不是由這種東西作出來的,你就得使用--follow-tags和--ignore-tags了。

嘿,我有個文件裏面都是連接,怎麼辦?要是不是html你只需要

wget -i your.file

如果是,那也不繁

wget -F -i your.file

下面是補充:

wget -m ftp://username:password@IPAddress/*

-m  做站点镜像时的选项,如果你想做一个站点的镜像,使用这个选项,它将自动设定其他合适的选项以便于站点镜像;等价于 -r -N -l inf -nr.

分享到:
评论

相关推荐

    Wget使用方法.txt

    ### Wget 使用方法详解 #### 一、Wget 简介 `wget` 是一个强大的命令行工具,用于从互联网上下载文件。它支持多种协议,包括 HTTP、HTTPS 和 FTP,同时也支持通过代理服务器进行下载。`wget` 的强大之处在于其高度...

    wget使用技巧(方便有用的参数)

    ### wget使用技巧详解 在日常工作中,熟练掌握wget这一强大的命令行工具,能够极大地提高工作效率,简化复杂的网络文件下载过程。本文将深入探讨wget的使用技巧,特别关注那些平日里可能被忽视但极其实用的参数,...

    wget使用说明

    ### wget使用说明 #### 快速下载工具wget:如何使用WGET进行程序的自动更新 在互联网技术领域中,wget是一款强大的命令行工具,被广泛应用于文件和网页内容的下载。它不仅支持HTTP、HTTPS和FTP协议,还能处理断点...

    wget_wget_

    wget是Linux环境中广泛使用的命令行工具,用于从互联网上下载文件。它支持HTTP、HTTPS和FTP协议,甚至可以通过代理服务器工作,使得用户在各种网络环境下都能便捷地获取远程资源。wget的强大之处在于其非交互式操作...

    wget使用方法

    **wget使用方法** wget是一款强大的命令行下载工具,广泛应用于Linux系统中,它支持通过HTTP、HTTPS和FTP协议下载文件,甚至可以在用户断线后继续之前的下载任务,这对于下载大文件或者网络不稳定的情况非常有用。...

    wget使用.pdf

    Wget是一个广泛使用的命令行网络工具,主要用来在不需要用户交互的情况下,从网络上下载文件。它支持多种协议,如HTTP、HTTPS、FTP等,并且能够递归地下载整个网站。Wget具备多种功能,例如镜像网站的下载、限制下载...

    lwget使用文档1

    5. **命令行友好**:命令行选项与wget类似,易于理解和使用。例如,`-v` 用于显示版本信息,`-h` 输出帮助信息,`-q` 静默模式等。 ### 使用示例 - `./lwget http://host:8080/PPT.rar`:默认参数下载HTTP链接的...

    支持中文目录wget版本,linux版本

    在wget的源代码中 src/url.c 这个文件中有wget如何处理文件名的函数url_file_name() url_file_name()在根据url的形式判断该保存为什么样的文件名,并进行了多方面的考虑,最终该函数调用了append_uri_pathel(),该...

    安卓下利用ndk编译wget项目

    3. **修改构建系统**:wget使用的是 autotools 构建系统,可能需要对其进行调整,使其适应Android的交叉编译。这包括修改`configure`脚本和`Makefile`s,以指向NDK的交叉编译工具链,并设置正确的库路径和目标架构。...

    WGet使用方法

    只需使用`-c`参数,如`wget -c http://the.url.of/incomplete/file`。此功能依赖于服务器支持,如果服务器不支持,断点续传则无法实现。另外,`-t`参数设置重试次数,`-T`参数设置超时时间,用于控制下载失败后的重...

    解决wget无法使用

    ### 解决wget无法使用 在Linux环境中,wget是一款非常实用的工具,主要用于通过HTTP、HTTPS以及FTP协议下载文件。然而,在某些情况下,用户可能会遇到无法使用wget的问题。本文将详细介绍如何解决这一问题,并提供...

    Linux系统中wget的使用方法解析.docx

    Linux系统中wget的使用方法解析 wget 是一个强大的下载工具,支持 HTTP 和 FTP 协议,支持代理服务器和断点续传。下面是 wget 的使用方法解析: 功能说明 wget 使用 HTTP 和 FTP 协议,支持代理服务器和断点续传...

    wget wget wget wget

    使用`wget`时,通常在命令行输入URL即可开始下载。例如,要下载一个网页,只需输入: ``` wget http://example.com/page.html ``` **递归下载与镜像:** `wget`可以进行递归下载,复制整个网站或目录结构。通过添加`...

    Android 终端上可以使用的完全版本wget

    然而,对于更复杂的任务,如使用cookies进行身份验证或者设置特定的下载选项,原生版本的wget可能就显得力不从心了。在这种情况下,你需要一个完整功能的wget版本,这就是"Android终端上可以使用的完全版本wget"的...

    wget64.exe

    WIndows下的wget使用方式:下载对应系统版本的wget.exe,将文件拷贝到c:/Windows/System32下

    解决wget无法使用的方法

    ### 解决wget无法使用的方法 在Linux环境中,`wget`是一个非常重要的工具,它用于从网络上下载文件。然而,在某些情况下,用户可能会遇到`wget`无法使用的问题。本文将详细探讨这一问题,并提供一系列解决方案。 #...

    wget详细使用说明

    wget的最基础用法是直接跟URL地址一起使用,例如: ```bash wget http://example.com/file.txt ``` 这将会下载指定URL的文件到当前目录。 ### 选项说明 **-c 或 --continue** 这个选项使得wget可以恢复中断的...

Global site tag (gtag.js) - Google Analytics