我正在尝试移动和存档文件夹,但事情似乎没有发生。
CURRDATEforARCHIVE=`date +%Y-%m-%d`
PASTDATEforARCHIVE=`date -d "now - 7 days" "+%Y-%m-%d"`
mkdir $status_destpath/${PASTDATEforARCHIVE}TO${CURRDATEforARCHIVE}
echo "Directory Created"
cd $status_srcpath
for f in *
do
mv $f $status_destpath/${PASTDATEforARCHIVE}TO${CURRDATEforARCHIVE}
done
echo "Moving all files done"
zip "${PASTDATEforARCHIVE}TO${CURRDATEforARCHIVE}.zip" "$status_destpath/${PASTDATEforARCHIVE}TO${CURRDATEforARCHIVE}"
echo "Zipping Done."
echo "Verification in progress."
# Verify that zip has been created.
if [ -f "${PASTDATEforARCHIVE}TO${CURRDATEforARCHIVE}.zip" ]
then
echo "Zip creation pass. Deletion in progress."
rm -rf $status_destpath/${PASTDATEforARCHIVE}TO${CURRDATEforARCHIVE}
else
printf "Zip creation failed '%s'\n"
fi
echo "Archival End."
过去日期似乎不起作用,文件也没有被存档,档案文件夹的位置在src,我如何存档并将其存放在目的地?
答案 0 :(得分:0)
您需要GNU date
才能使用定义PASTDATEforARCHIVE
变量的GNU特定选项。
根据您使用的Solaris发行版,GNU日期可能位于/usr/gnu/bin
,/usr/sfw/bin
,/usr/local/bin
,/usr/csw/bin
或/usr/has/bin
目录中...
如果缺少,则需要安装GNU date
或使用其他方法设置变量。