首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 編程語言 >  >> C語言 >> 關於C語言

Linux/Windows 檔案備份實戰:tar、zip、ftp、wget 自動化腳本

     編輯:關於C語言

備份是開發者的基本功。本文提供跨平台的命令列備份方案,涵蓋壓縮、加時間戳命名、FTP 上傳、WGET 下載,並以 Shell/Batch 腳本實現自動化。

核心工具

  • 壓縮:Linux tar / Windows zip(需安裝 Info-ZIP)
  • 傳輸:ftp(內建)、wget(支援 FTP 鏡像)
  • 排程:Linux cron / Windows 工作排程器

常用備份指令速查

1. 目錄打包

# Windows
zip -r backup.zip "c:\yourfolder"

# Linux (打包 home,排除備份檔本身)
tar -czvf ~/backup.tgz --exclude backup.tgz ~/

2. 帶時間戳壓縮並 FTP 上傳

:: Windows batch
@echo off
set host=ftp.yourhost.com
set user=username
set pass=password
set file=backup-%date:~4,2%-%date:~7,2%-%date:~10%.zip
set dir="yourfolder"
zip -r %file% %dir%

> script.ftp echo open %host%
>> script.ftp echo %user%
>> script.ftp echo %pass%
>> script.ftp echo bin
>> script.ftp echo put %file%
>> script.ftp echo bye
ftp.exe -d -s:script.ftp > backup.log
del script.ftp
#!/bin/bash
# Linux shell
host="ftp.yoursite.com"
user="username"
pass="password"
file="backup-$(date '+%m-%d-%Y').tgz"
dir="$HOME"
tar -cvzf "$file" "$dir"
ftp -vin <

3. WGET 鏡像下載備份檔

:: Windows
set host="ftp://ftp.your.host.com"
set user="flintstone"
set pass="yabbadabbadoo"
wget %host% --ftp-user=%user% --ftp-password=%pass% ^
    --mirror --output-file=backup.log --passive-ftp
#!/bin/sh
# Linux
host="ftp://ftp.your.host.com"
user="username"
pass="password"
wget "$host" --ftp-user="$user" --ftp-password="$pass" \
    --mirror --output-file=backup.log --passive-ftp

工具下載連結

生產環境注意事項

  1. 大檔案考慮分割(split、zip -s)。
  2. FTP 傳輸明文,建議改用 scp/rsync over SSH。
  3. 原始碼請搭配 Git/SVN 版控,勿僅依賴備份腳本。
  4. 腳本放入排程任務實現無人值守。
  5. 上述為全量備份,增量備份請用 rsync 或專用工具。
  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved