在 bash 腳本中使用日期變數自動使用 dd

在 bash 腳本中使用日期變數自動使用 dd

我想在 bash 腳本中使用 dd 自動執行備份。

我目前使用此命令建立 sda2 分割區的備份映像:

sudo dd bs=64K if=/dev/sda2 | gzip > /mnt/backup/backup_sda2_**TODAY**.img.gz 

我想用變數參數化 bash 腳本今天- 在哪裡今天是當月的當前日期 – 例如2021 年 4 月 4 日4

所以我的問題是:

1.如何建立變數今天使用系統日期?

2.如何將其建置到上面的dd命令中?

非常感謝

答案1

使用date +FORMAT取得當前日期(格式將根據%d您的情況而定)並且命令替換( $(...)) 將其建置到您的命令中:

sudo dd bs=64K if=/dev/sda2 | gzip > /mnt/backup/backup_sda2_$(date +%d).img.gz 

請注意,這%d是零填充的:

%d - 一個月中的某一天(例如,01)

請注意,這將備份整個sda2分割區,包括空白空間。當然還有更好的選擇,例如 Ubuntu 的 Déjà Dup 工具(又稱為「備份」),它可以進行增量備份。

相關內容