备份最后一天所有修改的文件
#!/bin/bash
BACKUPFILE=backup-$(date+%m-%d-%Y)
archive=${1:-$BACKUPFILE}
tar cvf - `find . -mtime -1 -type f -print`>$archive.tar
gzip $archive.tar
echo "Directory $PWD backed up in archive file \ "$archive.tar.ga\"."
有几个疑问:
1:为什么执行BACKUPFILE=backup-$(date+%m-%d-%Y)时出错,没有%d,%y这些命令。
2.find . -mtime -1 -type f -print这个命令是什么意识?
3.archive=${1:-$BACKUPFILE}这句话是什么意识?
4.backup是什么意识?
请高手解答,谢谢!
------解决方案--------------------
1、date和后面的加号之间加一个空格
2、查找修改时间在一天之内,并且类型为普通文件的文件
3、指定参数的默认值,$1设置且非空时使用$1的值,否则使用$BACKUPFILE
4、备份