脚本日期问题。。。

空的 2011-08-08 11:21:49
想写个 打包日志的脚本,但作为个初学者,
很郁闷的是脚本里日期不会算,
比如名字叫 cleanlog.sh
运行: cleanlog.sh 20110808
取数据20110808,算出前个礼拜的7个日期,想按日期打包,
但是又不能简单的加减,出现月份交替就得错,
求脚本内 日期加减 的方法,先谢谢了
...全文
113 10 打赏 收藏 转发到动态 举报
写回复
用AI写文章
10 条回复
切换为时间正序
请发表友善的回复…
发表回复
空的 2011-08-12
  • 打赏
  • 举报
回复
[Quote=引用 9 楼 yanguoliang 的回复:]
给你一个脚本吧
#echo 日志备份....
date='date + %Y%m%d'
cd $HOME
tar -cvf $HOME/databak/$data.tar log
gzip -f $HOME/databak/*.tar
rm -rf log
mkdir log
然后 在crontab -e 中,添加一条,让其在每周的什么时间执行就行了
[/Quote]


好吧,这儿提议也不错,不用在 ksh里面做日期加减了,
mich_mia 2011-08-11
  • 打赏
  • 举报
回复
给你一个脚本吧
#echo 日志备份....
date='date + %Y%m%d'
cd $HOME
tar -cvf $HOME/databak/$data.tar log
gzip -f $HOME/databak/*.tar
rm -rf log
mkdir log
然后 在crontab -e 中,添加一条,让其在每周的什么时间执行就行了
mich_mia 2011-08-11
  • 打赏
  • 举报
回复
[Quote=引用 5 楼 erhou134 的回复:]
公司要求每个礼拜的日志打包,然后要备份。。。
[/Quote]

每个礼拜打包,备份,刚好跟我说的方法一样,也就是说每周定时打包,备份。这个你就要用crontab。
好好去看下这个的用法,然后就是写个shell脚本执行,这个shell脚本只是用来备份的,至于计算日期的话,就交给crontab去安排就行了。
blacklian 2011-08-10
  • 打赏
  • 举报
回复
man date
ch_984326013 2011-08-09
  • 打赏
  • 举报
回复
man date
空的 2011-08-09
  • 打赏
  • 举报
回复
公司要求每个礼拜的日志打包,然后要备份。。。
freetstar 2011-08-08
  • 打赏
  • 举报
回复
man date
redpichao 2011-08-08
  • 打赏
  • 举报
回复
删除7天的文件:
#!/bin/sh
find 删除的目录名 -mtime +7 -name "目录下面的文件名" -exec rm -rf {} \;
mich_mia 2011-08-08
  • 打赏
  • 举报
回复
按日期打包,我有点没弄明白的是,为啥你是这个想法。
我觉得你那样做显然是比较麻烦的,你直接写个 定时执行的crontab ,执行打包脚本,
这样不就行了。
空的 2011-08-08
  • 打赏
  • 举报
回复
那是ksh,不是bash。。。。

19,613

社区成员

发帖
与我相关
我的任务
社区描述
系统使用、管理、维护问题。可以是Ubuntu, Fedora, Unix等等
社区管理员
  • 系统维护与使用区社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧