我几乎已经完成了这个工作,这是一个将在 CRON 中运行的脚本,以保留最新的 10 个备份,并删除其他任何内容,我想记录它以跟踪以确保一切都井然有序,我让它工作并编写删除了哪些文件,可惜我无法设置时间戳的前缀。
TIMESTAMP=$(date +%d-%m-%Y-%H-%M-%S)
LOGFILE="/home/user/place/backups/backuplog.txt"
echo "$TIMESTAMP, " | ls -1tr | head -n -10 | xargs -d '\n' rm -f -v >> $LOGFILE
Run Code Online (Sandbox Code Playgroud) 我不知道我是怎么做到的。我必须擦除我的专用服务器并重新启动,所以我首先将所有内容备份到远程 VPS;在此过程中,我将一个充满其他文件夹的文件夹压缩为foldername.gz,而不是使用tar,因此当我现在提取它时,它会提取为单个文件,而不是一个充满文件夹的文件夹。我尝试重命名为foldername.tar.gz,但提取时给出:
tar: This does not look like a tar archive
tar: Skipping to next header
tar: Exiting with failure status due to previous errors
Run Code Online (Sandbox Code Playgroud)
当我使用它时file foldername.gz
,它给了我:
foldername.gz: gzip compressed data, was "2a863233-fac4-4611-8bbd-76416e58e5d4.dat", last modified: Thu Dec 9 10:36:04 2021, from Unix, original size modulo 2^32 2629632
编辑,这给出了file -z foldername.gz
:
foldername.gz: gzip compressed data, from FAT filesystem (MS-DOS, OS/2, NT) (gzip compressed data, was "2a863233-fac4-4611-8bbd-76416e58e5d4.dat", last modified: Thu Dec 9 10:36:04 2021, from Unix)