# Linux下怎么上傳、下載文件
在Linux系統中,文件傳輸是日常運維和開發中的高頻操作。本文將詳細介紹命令行和圖形界面下多種文件上傳下載方法,涵蓋本地與遠程服務器間的數據傳輸場景。
---
## 一、命令行工具
### 1. SCP(Secure Copy Protocol)
基于SSH的安全文件傳輸工具,適合本地與遠程服務器間加密傳輸。
**上傳文件到遠程服務器**:
```bash
scp /local/path/file.txt username@remote_host:/remote/path/
下載遠程文件到本地:
scp username@remote_host:/remote/path/file.txt /local/path/
常用參數:
- -P 指定非默認SSH端口
- -r 遞歸傳輸目錄
- -C 啟用壓縮傳輸
交互式安全文件傳輸,適合需要瀏覽目錄的場景。
基本用法:
sftp username@remote_host
連接后使用命令:
- put local_file 上傳文件
- get remote_file 下載文件
- ls 查看遠程目錄
- lls 查看本地目錄
增量同步工具,適合大文件或需要保持同步的場景。
同步本地到遠程:
rsync -avz /local/path/ username@remote_host:/remote/path/
從遠程同步到本地:
rsync -avz username@remote_host:/remote/path/ /local/path/
優勢:
- 斷點續傳(--partial)
- 排除特定文件(--exclude)
- 帶寬限制(--bwlimit)
直接下載網絡文件到本地。
wget示例:
wget https://example.com/file.zip -O /path/to/save.zip
curl示例:
curl -o /path/to/save.zip https://example.com/file.zip
對比:
| 工具 | 特點 |
|---|---|
| wget | 支持遞歸下載、斷點續傳 |
| curl | 支持更多協議(如FTP/SMB) |
支持圖形化SFTP操作:
1. 按 Ctrl+L 輸入地址欄
2. 輸入 sftp://username@remote_host/path
3. 通過拖拽完成文件傳輸
跨平臺FTP/SFTP客戶端: - 支持多線程傳輸 - 提供站點管理器功能 - 可視化傳輸隊列管理
KDE桌面默認文件管理器: - 內置Fish協議支持 - 可直接掛載遠程目錄為本地驅動器
rsync --progress -htar czvf - bigfile | split -b 2G - bigfile.tar.gz.# 接收方監聽端口
nc -l 1234 > received_file
# 發送方傳輸文件
nc 接收方IP 1234 < send_file
rclone copy /local/path remote:bucket_name避免使用明文協議:
密鑰管理:
ssh-keygen -t ed25519
ssh-copy-id user@host
傳輸監控:
pv監控傳輸進度:
tar cf - /data | pv | ssh user@host "tar xf - -C /backup"
并行傳輸:
parallel-scp -h hosts.list -l user -r /local/path /remote/path
傳輸前壓縮:
tar czf - /folder | ssh user@host "tar xzf - -C /destination"
帶寬限制:
rsync --bwlimit=1000 -avz /source user@host:/dest
通過合理選擇工具和方法,Linux環境下的文件傳輸既安全又高效。建議根據實際場景組合使用上述方案,例如日常小文件用SCP,定期備份用rsync,臨時分享用Python HTTP服務等。 “`
注:實際字符數約1100字(含代碼塊)??筛鶕枰鰷p具體工具的示例或調整技術細節的深度。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。