使用Linux SFTP進行批量文件傳輸可以通過多種方法實現,以下是幾種常見的方法:
mput
命令連接到SFTP服務器:
sftp username@hostname
進入批量傳輸模式:
在SFTP提示符下,輸入mput
命令,后跟要上傳的文件名或通配符。
mput /path/to/local/files/*
確認傳輸:
SFTP會提示你確認是否上傳每個文件。你可以輸入yes
來確認。
put
命令結合循環如果你需要更復雜的控制,可以使用put
命令結合shell循環來逐個上傳文件。
連接到SFTP服務器:
sftp username@hostname
編寫循環腳本: 在本地機器上編寫一個shell腳本來循環上傳文件。
#!/bin/bash
for file in /path/to/local/files/*; do
sftp username@hostname <<EOF
put "$file"
bye
EOF done
3. **運行腳本**:
賦予腳本執行權限并運行它。
```bash
chmod +x upload_files.sh
./upload_files.sh
scp
命令(適用于批量傳輸到遠程服務器)如果你需要將文件從本地機器批量傳輸到另一臺遠程服務器,可以使用scp
命令。
編寫腳本: 編寫一個shell腳本來循環傳輸文件。
#!/bin/bash
for file in /path/to/local/files/*; do
scp "$file" username@remote_host:/path/to/remote/directory/
done
運行腳本: 賦予腳本執行權限并運行它。
chmod +x transfer_files.sh
./transfer_files.sh
rsync
命令(適用于增量傳輸)如果你需要增量傳輸文件(即只傳輸發生變化的文件),可以使用rsync
命令。
編寫腳本:
編寫一個shell腳本來使用rsync
進行增量傳輸。
#!/bin/bash
rsync -avz /path/to/local/files/ username@hostname:/path/to/remote/directory/
運行腳本: 賦予腳本執行權限并運行它。
chmod +x sync_files.sh
./sync_files.sh
通過以上方法,你可以高效地使用Linux SFTP進行批量文件傳輸。選擇適合你需求的方法進行操作即可。