分页: 1 / 1

家里的ubuntu长期24小时运行每天都定时下载一个文件并添加日期

发表于 : 2014-12-13 12:58
cem
各位同好,家里的ubuntu长期24小时运行。我想要定时下载一个网页html(或者htm),因为此网页每次更新都会覆盖昨天的内容,为了保存历史记录,我想让ubuntu每天定时下载保存后在原文件名的基础上添加日期比如20141213(2014_12_13)方便日后查询历史记录。请问有什么办法可以实现?谢谢

Re: 家里的ubuntu长期24小时运行每天都定时下载一个文件并添加日期

发表于 : 2014-12-13 14:37
jarlyyn
首先,假定你会下载,会在/etc/cron.daily里添加计划任务。

你的问题是,怎么在shell脚本里给变量设置为当前时间。

当前时间可以通过linux的date命令取得,如date +%Y-%m-%d

那么你的问题是,怎么在shell中把程序的显示设置为变量的值。

shell中可以通过把`(1左边的那个符号)包住程序来实现这一点。

范例代码:

#!/bin/bash
filename=`date +%Y-%m-%d`
echo $filename

把echo替换为你的下载命令,如wget/curl等即可

Re: 家里的ubuntu长期24小时运行每天都定时下载一个文件并添加日期

发表于 : 2014-12-17 12:17
cem
jarlyyn 写了:首先,假定你会下载,会在/etc/cron.daily里添加计划任务。

你的问题是,怎么在shell脚本里给变量设置为当前时间。

当前时间可以通过linux的date命令取得,如date +%Y-%m-%d

那么你的问题是,怎么在shell中把程序的显示设置为变量的值。

shell中可以通过把`(1左边的那个符号)包住程序来实现这一点。

范例代码:

#!/bin/bash
filename=`date +%Y-%m-%d`
echo $filename

把echo替换为你的下载命令,如wget/curl等即可
谢谢 不好意思 最近忙

"#!/bin/bash"

是什么呢?

而且我需要下载的网页的地址不会变 是没有日期的

Re: 家里的ubuntu长期24小时运行每天都定时下载一个文件并添加日期

发表于 : 2014-12-17 15:05
oneleaf

代码: 全选

cat << "EOF" > /etc/cron.daily/downloadhtml.sh
#!/bin/bash
wget "http://www.xxx.com/xxx.html" -O "/save_path/`date +%Y-%m-%d`.html"
EOF
chmod +x /etc/cron.daily/downloadhtml.sh
/etc/init.d/cron restart

Re: 家里的ubuntu长期24小时运行每天都定时下载一个文件并添加日期

发表于 : 2014-12-17 15:29
jarlyyn
cem 写了:
jarlyyn 写了:首先,假定你会下载,会在/etc/cron.daily里添加计划任务。

你的问题是,怎么在shell脚本里给变量设置为当前时间。

当前时间可以通过linux的date命令取得,如date +%Y-%m-%d

那么你的问题是,怎么在shell中把程序的显示设置为变量的值。

shell中可以通过把`(1左边的那个符号)包住程序来实现这一点。

范例代码:

#!/bin/bash
filename=`date +%Y-%m-%d`
echo $filename

把echo替换为你的下载命令,如wget/curl等即可
谢谢 不好意思 最近忙

"#!/bin/bash"

是什么呢?

而且我需要下载的网页的地址不会变 是没有日期的
是告诉系统用什么来执行这个脚本。

变的是保存的地址

Re: 家里的ubuntu长期24小时运行每天都定时下载一个文件并添加日期

发表于 : 2014-12-17 17:23
susbarbatus
+%Y-%m-%d 可以简化为 +%F

Re: 家里的ubuntu长期24小时运行每天都定时下载一个文件并添加日期

发表于 : 2014-12-19 20:20
cem
oneleaf 写了:

代码: 全选

cat << "EOF" > /etc/cron.daily/downloadhtml.sh
#!/bin/bash
wget "http://www.xxx.com/xxx.html" -O "/save_path/`date +%Y-%m-%d`.html"
EOF
chmod +x /etc/cron.daily/downloadhtml.sh
/etc/init.d/cron restart
谢谢 其实我不会用每天的cron定时 比如想在每天下午14:00的时候下载这个网页 要怎么设置呢
我现在每天都手动下载这三个网页 有几年了吧 感觉真的太累了

Re: 家里的ubuntu长期24小时运行每天都定时下载一个文件并添加日期

发表于 : 2014-12-20 23:50
astolia

代码: 全选

echo "0 14 * * * wget 'http://xxx.com/xxx.html' -O ~/`date +%F`.html" | crontab 
注意上面的写法会覆盖已有的内容。如果你要下载多个网页的话,需要像下面这样干

代码: 全选

echo "0 14 * * * wget 'http://xxx.com/xxx.html' -O ~/xxx_`date +%F`.html
0 15 * * * wget 'http://xxx.com/xxx1.html' -O ~/xxx1_`date +%F`.html
0 16 * * * wget 'http://xxx.com/xxx2.html' -O ~/xxx2_`date +%F`.html" | crontab 

Re: 家里的ubuntu长期24小时运行每天都定时下载一个文件并添加日期

发表于 : 2014-12-27 10:59
cem
谢谢....
"0 14 * * * "是什么意思呢?比如想在每天下午14:00的时候下载这个网页 要怎么设置呢

Re: 家里的ubuntu长期24小时运行每天都定时下载一个文件并添加日期

发表于 : 2014-12-27 11:11
poloshiao

Re: 家里的ubuntu长期24小时运行每天都定时下载一个文件并添加日期

发表于 : 2014-12-28 23:36
chaoEmilychao
刚来这儿,希望各位多多指导!

Re: 家里的ubuntu长期24小时运行每天都定时下载一个文件并添加日期

发表于 : 2015-01-01 21:29
cem
我试试 谢谢

Re: 家里的ubuntu长期24小时运行每天都定时下载一个文件并添加日期

发表于 : 2015-03-06 16:42
infidel
八仙过海,各显神通啊。

Re: 家里的ubuntu长期24小时运行每天都定时下载一个文件并添加日期

发表于 : 2015-09-23 10:41
coolbengo
cem 写了:谢谢....
"0 14 * * * "是什么意思呢?比如想在每天下午14:00的时候下载这个网页 要怎么设置呢
每天14点
上面的师兄已给出了答案。