• <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>

            runsisi

              C++博客 :: 首頁 :: 新隨筆 :: 聯系 :: 聚合  :: 管理 ::
              45 隨筆 :: 15 文章 :: 26 評論 :: 0 Trackbacks
            Lftp是一個功能強大的下載工具,它支持訪問文件的協議: ftp, sftp,ftps, http, https, hftp, fish.(其中ftps 和https需要在編譯的時候包含openssl庫)。llftp的界面非常想一個shell: 有命令補全,歷史記錄,允許多個后臺任務執行等功能,使用起來非常方便。它還有書簽、排隊、鏡像、斷點續傳、多進程下載等功能。

            相關配置文件:

            /etc/lftp.conf
            全局配置文件,實際位置依賴系統配置文件目錄,可能在/etc,也可能在/usr/local/etc

            ~/.lftp/rc, ~/.lftprc
            用戶配置文件,將在/etc/lftp.conf之后執行,所以這里面的設置會覆蓋/etc/lftp.conf中的設置,貌似.lftprc沒用,而下邊的配置文件都與.lftp有關,不如直接建立.lftp目錄及rc文件

            lftp 缺省不會顯示 ftp 服務器的歡迎信息和錯誤信息,這在很多時候不方便,因為你有可能想知道這個服務器到底是因為沒開機連不上,還是連接數已滿。如果是這樣,你可以在 ~/.lftp/rc 里寫入一行
            debug 3
            就可以看到出錯信息了。

            更多的配置選項請查man手冊或在lftp界面內用命令 set -a 獲得。

            ~/.lftp/log
            當lftp轉為后臺非掛起模式執行時,輸出將重定向到這里

            ~/.lftp/bookmarks
            這是lftp存儲書簽的地方,可以lftp查看bookmark命令

            ~/.lftp/cwd_history
            這個文件用來存儲訪問過的站點的工作目錄

            登錄ftp服務器:

            lftp ftp://user:password@site:port
            lftp user:password@site:port
            lftp site -p port -u user,password
            lftp site:port -u user,password

            上面的幾種方式都能正常工作,不過密碼都是明文,這樣不太安全。沒關系
            lftp user@site:port
            系統會提示輸入password

            如果在命令行不輸入站點名稱,則必須在進入到lftp界面后用open命令打開
            也可以先不帶用戶名登錄,然后在接口界面下用login命令來用指定賬號登錄,密碼不顯示

            在用lftp訪問國內一些ftp服務器時,往往看到的中文是亂碼,這是由于服務器和本地編碼不一致造成的。我們只要在主目錄下新建文件~/.lftp/rc,并在其中加入以下內容:
            debug 3
            set ftp:charset GBK
            set file:charset UTF-8
            也可以在/etc/lftp.conf 中添加:
            set ftp:charset gbk
            set file:charset utf8
            set pget:default-n 5

            常用命令:

            下載
            get當然是可以的,還可以
            mget -c *.pdf
            把所有的pdf文件以允許斷點續傳的方式下載。m代表multi

            mirror aaa/
            將aaa目錄整個的下載下來,子目錄也會自動復制

            pget -c -n 10 file.dat
            以最多10個線程以允許斷點續傳的方式下載file.dat
            可以通過設置pget:default-n的值而使用默認值。

            上傳
            同樣的put,mput,都是對文件的操作,和下載類似。

            mirror -R 本地目錄名
            將本地目錄以迭代(包括子目錄)的方式反向上傳到ftp site。

            模式設置
            file:charset (string)
            設置本地字符集,初始化默認讀取系統locale
            ftp:charset (string)
            ftp服務器端字符集,默認為空,即本地系統locale同,只在server不支持utf-8時用

            我的設置:
            set ftp:charset "gbk"
            set sftp:charset "UTF-8"
            set file:charset "UTF-8"
            ftp:passive-mode (boolean)

            默認為被動模式
            設置ftp的被動模式,在有防火墻或者轉發路由時用
            lftp在被動模式用PASV命令,而不用主動模式的PORT命令
            passive mode:lftp自己建立到ftp server的連接
            active mode: ftp server建立數據傳輸的連接

            我的設置:
            # default: use passive mode
            set ftp:passive-mode yes
            ## 202.38.64.22, use active mode
            set ftp:passive-mode/202.38.64.22 no
            set ftp:passive-mode/203.38.64.41 no
            set ftp:passive-mode/166.111.153.78 no

            set ftp:charset gbk
            遠程ftp site用gbk編碼,對應的要設置為utf8,只要替換gbk為utf8即可。

            set file:charset utf8
            本地的charset設定為utf8,如果你是gbk,相應改掉。

            set ftp:passive-mode 1
            使用被動模式登錄,有些site要求必須用被動模式或者主動模式才可以登錄,這個開關就是設置這個的。0代表不用被動模式。

            set net:limit-rate 10000,10000
            限制上傳下載各為10KB/s

            !
            執行本地 shell的命令(由于lftp 沒有 lls, 故可用 !ls 來替代)

            下載單個文件和一組文件,斷點續傳用-c參數
            lftp dsec.pku.edu.cn:/> get -c ls-lR.txt
            lftp dsec.pku.edu.cn:/> mget *.txt

            鏡像(反鏡像即上傳)一個目錄,可以用多個線程并行鏡像一個目錄(--parallel=N)
            lftp dsec.pku.edu.cn:/> mirror incoming local_name
            lftp dsec.pku.edu.cn:/> mirror -R local_name
            lftp dsec.pku.edu.cn:/> mirror --parallel=3 incoming local_name

            多線程下載,類似網絡螞蟻的功能;缺省是5個線程
            lftp dsec.pku.edu.cn:/> pget -n 4 ls-lR.txt

            后臺任務管理

            缺省情況下,按 Ctrl+z,正在執行的任務將轉為后臺執行,也可以在命令行末尾加&符號使任務在后臺執行。用jobs命令可以查看所有的后臺進程。用 queue命令可以排隊新的任務。如果退出lftp是還有任務在后臺執行,lftp將轉為后臺執行。


            其它用法
            lftp支持類似bash的管道操作,例如用下面的命令可以將ftp服務器上的特定目錄下(也可以是整個站點)所有文件的大小存到本地的文件ls.txt中
            lftp dsec.pku.edu.cn:/> du incoming > ls.txt

            !shell command
            anon 匿名登錄
            at time [-- command] 在給定時間執行命令.eg:‘at 08:00 -- exit top kill &
            cls和ls區別:ls是由服務器來格式化輸出,cls則是由lftp自己來格式化,類似shell中的ls命令

            command cmd args... 直接運行cmd,忽略alias

            exit [bg] [top] [kill]

            find 可遍歷目錄,用于缺乏ls -R文件的服務器

            glob [-d] [-a] [-f] command pattern:用于模式擴展,普通的lftp命令沒有模式擴展功能

            -f plain files(default)
            -d directories
            -a all files
            kill all | job_no 殺死全部job或指定job號

            mirror [OPTS] [source [target]]
            -r, --no-recursion don’t go to subdirectorie
            - R, --reverse reverse mirror (put files)
            queue [-n num ] cmd
            quote cmd
            rels [args] 同ls,只是不用cache。
            repeat [ -c ] [[-d] delay] [command]
            重復執行command,默認間隔1秒
            -c 重復次數
            --while-ok breaks loop when command returns non-zero exit code;
            --until-ok’ breaks on zero exit code.

            Examples:
            repeat at tomorrow -- mirror
            repeat 1d mirror


            ftp中的bookmark命令,是將配置寫到~/.lftp/bookmarks文件中;我們可以直接修改此文件,快速登陸ftp服務器。

            例如添加一行:
            echo 'uftp ftp://user:passwd@ftp.ubuntu.org.cn' >> ~/.lftp/bookmarks

            lftp的bookmarks文件書寫格式為:
            別名<空格>ftp://user:passwd@site:port

            以后要登陸ubuntu-cn的ftp,只要執行:
            lftp uftp

            在lftp終端中,前面帶一個l的命令例如lcd,指的是local,就是在本機的操作,而對應的沒有這個l的,都是對ftp site的操作。還有就是要執行本地終端命令,也可以用前面帶一個!的方式。這樣,配合起來,終端,本地的操作都很放遍。
            例如,查看ftp上所有的以mp3為擴展名的文件:
            代碼:
            find . -name "*.mp3"
            posted on 2009-03-23 15:16 runsisi 閱讀(1724) 評論(0)  編輯 收藏 引用 所屬分類: linux
            久久国产精品无码HDAV| 99久久精品免费看国产一区二区三区 | 久久婷婷五月综合国产尤物app| 热RE99久久精品国产66热| 奇米影视7777久久精品人人爽| 热久久最新网站获取| 韩国三级大全久久网站| 久久强奷乱码老熟女网站| 精品久久久久香蕉网| 香蕉久久永久视频| 91精品观看91久久久久久| 国产精品久久久久久久人人看| 99久久er这里只有精品18| 久久99精品九九九久久婷婷| 国内精品久久久久影院薰衣草| 久久久国产乱子伦精品作者| 久久国产午夜精品一区二区三区| 97久久国产露脸精品国产| 国产视频久久| 国产精品久久久久影院嫩草| 精品熟女少妇AV免费久久| 久久亚洲国产精品123区| 人妻丰满AV无码久久不卡| 狠狠人妻久久久久久综合蜜桃| 久久国产精品77777| 伊人久久综合精品无码AV专区| 久久综合伊人77777| 久久久久这里只有精品| 伊人热人久久中文字幕| 久久久久国产精品| 97久久超碰国产精品旧版| 久久亚洲AV成人出白浆无码国产| 午夜肉伦伦影院久久精品免费看国产一区二区三区 | 无码人妻精品一区二区三区久久 | 四虎影视久久久免费| 国产精品久久一区二区三区| 精品久久久久久无码专区不卡| 久久人人爽爽爽人久久久| 久久99国产乱子伦精品免费| 天天躁日日躁狠狠久久| 久久香蕉国产线看观看精品yw|