Phổ biến nhất là wget, curl và lftp :-)
wget
Dung lượng nhẹ, dễ sử dụng và khá phổ biến. Ví dụ:
wget http://fpdownload.adobe.com/get/flashplayer/current/install_flash_player.exe
.
curl
Cũng dễ dùng như wget, dùng command-line cũng tốt, mà hỗ trợ lập trình còn tốt hơn vì API đơn giản và dễ dùng. Tuy nhiên mặc định curl sẽ xuất ra stdout (console) , vì thế để save lại tập tin thì cần thêm option ” -o filename.xyz” hoặc ” -O”
curl http://fpdownload.adobe.com/get/flashplayer/current/install_flash_player.exe -O
.
lftp
Cái này thường được dùng để tải ftp (mặc dù 2 tool trên cũng hỗ trợ cả HTTP/HTTPS lẫn FTP), nhưng trong một số trường hợp, tải HTTP bằng lftp có tốc độ nhanh vượt trội so với wget/curl :
lftp -e ‘pget http://fpdownload.adobe.com/get/flashplayer/current/install_flash_player.exe’
.
Ngoài 3 tools phổ biến trên, còn có một số tool mới như axel , aria2 , etc… Các tool này đều hỗ trợ HTTP/HTTPS và có thể thêm một vài giao thức khác (FTP/SFTP) . Trong thực tế thì các tool này dùng để tải xuống và thường không cần xác thực (đăng nhập) , tuy nhiên vẫn có thể hỗ trợ đăng nhập username/password hoặc token hoặc certificate . Cách hỗ trợ username/password phổ biến nhất là thêm trực tiếp vào URL của giao thức HTTP:
Chẳng hạn, thay vì :
wget http://domain.name/some/path/to/file.zip
thì dùng :
wget http://USERNAME:PASSWORD@domain.name/some/path/to/file.zip
(nếu có thiết lập proxy server thì nhớ set thêm biến môi trường http_proxy và ftp_proxy )
.
Còn trong trường hợp người dùng đã có sẵn tài khoản trên máy chủ chứa tập tin, thì có thể dùng một số tool khác thông qua đăng nhập SSH để tải (cả download lẫn upload) . Ở đây chỉ nêu 3 tools nhanh nhất là scp , tar và netcat.
scp
( scp user@remote_server:[REMOTE_FILE_TO_DOWNLOAD] [LOCAL_DIR_TO_SAVE] )
Thường dùng đường dẫn tuyệt đối trên Linux (có dấu slash “/” ) :
scp USER@SERVER:/absolute/path/to/file.zip /absolute/path/local/dir
Chúng ta cũng có thể dùng đường dẫn tương đối thay vì tuyệt đối, mặc định thì ở remote server là $HOME của user đó , còn ở máy local là thư mục hiện tại (pwd) , tức là thư mục “.”
scp USER@SERVER:Public/some/path/file.zip .
.
tar over ssh
Khi dùng SCP mặc định chúng ta cũng đã dùng SSH, còn một số công cụ khác vẫn có thể dùng để tải thông qua SSH, có thể nhanh hơn SCP chút ít, ví dụ như tar hoặc netcat :
ssh USER@SERVER ‘cd /some/path/to/remote/dir && tar c file.zip’ | tar xzv
hoặc :
ssh USER@SERVER -c ‘tar cz /some/path/to/file.exe’ > ./file.tar.gz
.
nc (netcat)
Netcat over SSH thường có tốc độ tải nhanh nhất, nhưng lại hơi rườm rà dòng lệnh.
.
Some more tips:
(to be updated)
./.
Pingback: Vietnamese Flash developers | DucQuoc's Blog
Pingback: Eclipse ExtJS jQuery | DucQuoc's Blog
Pingback: Synchronize time in Linux | DucQuoc's Blog
Pingback: Linux Directory Structure | DucQuoc's Blog
Pingback: One-liner find commands | DucQuoc's Blog