我正在寻找configuration此备份脚本采取当天的date,并使目录在mmddyyyy格式,因为这将是自动的。 但是,如果当天的目录已经存在(如果我需要在某一天做多个备份),我想添加-1或-2,这样就会出现07072011-3(如果它是当天做第四次备份)。
有没有简单的方法来添加到目录名称的末尾,每次写入+1时?
设置date/文件夹名称
today="$ (date +%m%d%Y)"
mkdir /home/user/backup/$today
检查目录是否存在
if [ ! -d /home/user/backup/$today ]
then
echo Directory already exists ;
你必须使用DDMMYYYY吗? 使用YYYYMMDD更容易,因为ls的默认sorting顺序将正确地将最新sorting到顶部。
你也可以延长date的想法来使用时间,例如
today=$( date +%Y%m%d%H)
得到YYYYMMDDHH,如果需要的话,甚至可以添加%M和%S。
如果你真的想坚持你select的格式,你可以做如下的事情:
today=$(date +%Y%m%d) folder=$today i=0 while [ -e /home/user/$folder ] do echo "${folder} exists"; i=$(( $i + 1 )) folder="${today}-${i}" done echo $folder;