我正在尝试/home/username/.mozilla/
使用 tar 设置一个 cron 作业来存档/备份目录及其所有子目录(包括隐藏文件)。我喜欢每天晚上 12:01 运行该作业。
以下是我目前的计划:
crontab -e
1 0 * * * tar -zcf /home/username/Dropbox/Backups/Firefox_Profile_$(date +%b_%d_%Y_"%H-%M").tgz home/username/.mozilla/ && echo "Firefox profile backed up on:" `date` >> /home/username/jobs
虽然我还没有真正设置 cron 作业,但是当我在终端中运行此命令时:
tar -zcf /home/username/Dropbox/Backups/Firefox_Profile_$(date +%b_%d_%Y_"%H-%M").tgz home/username/.mozilla/
它确实创建了一个压缩档案,但在解压后,它会创建一个目录>>home
及其子目录。username
.mozilla
我正在寻找的是:
(1)提取后将会有或.mozilla
最好mozilla
(删除点),及其子目录,包括隐藏文件(没有home
或username
目录)。
(2)是tar -zcf
获得最大压缩的最佳方法。
(3)保留所有文件权限原样。
(4)我是否需要在此命令中使用 [user] (即“用户名”):1 0 * * * username tar -zcf
多谢。
答案1
- 使用该
-C
选项,如下所示:tar -zcC /home/username -f output.tgz .mozilla
- 阅读此答案。
- 使用该
-p
选项。 - 我不懂你的问题。
答案2
发布我自己的答案,尽管 fliegendewurst 的答案对我有些帮助,但我无法完成运行 cron 作业的命令。bac0n 和 steeldriver 的评论帮助我弄清楚了其余的问题。
对我有用的是:
crontab -e
1 0 * * * tar -I 'gzip -9' -pcf /home/username/Dropbox/Backups/Firefox_Profile_$(date "+\%b_\%d_\%Y_\%H-\%M").tgz -C /home/username/ .mozilla/ && echo "Firefox profile backed up on:" `date` >> /home/username/jobs
使用选项指定 gzip 压缩级别的参考-I
:
https://superuser.com/a/1091640
注意:如果在运行此命令时 Firefox 处于打开或运行状态,您可能会收到一条正在写入文件的消息。