免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
12下一页
最近访问板块 发新帖
查看: 3053 | 回复: 15
打印 上一主题 下一主题

[文本处理] crontab任务不执行 [复制链接]

论坛徽章:
1
2015年迎新春徽章
日期:2015-03-04 09:54:45
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2015-01-05 21:36 |只看该作者 |倒序浏览
*/1 * * * *  ls /mnt |grep -v "`date +"%Y%m%d"`"|xargs rm -rf
删除今天以外的所有目录,这个看起来很简单在shell中也可以正常执行,但放到crontab中就怎么也执行不了
大家看看这个命令有什么问题,我反正搞了好一会才搞明白是那里出了问题,大家看看省的以后也出现这样的问题

论坛徽章:
18
辰龙
日期:2014-05-21 21:01:4115-16赛季CBA联赛之深圳
日期:2016-12-23 13:51:3815-16赛季CBA联赛之北控
日期:2016-11-28 18:26:3815-16赛季CBA联赛之佛山
日期:2016-11-03 11:18:5815-16赛季CBA联赛之辽宁
日期:2016-07-10 16:09:4115-16赛季CBA联赛之江苏
日期:2016-02-20 23:09:202015亚冠之塔什干棉农
日期:2015-08-17 19:49:492015年亚洲杯之日本
日期:2015-04-30 01:24:342015年亚洲杯之约旦
日期:2015-04-01 00:37:182015年亚洲杯之沙特阿拉伯
日期:2015-03-02 15:55:40处女座
日期:2014-05-25 10:34:0020周年集字徽章-年
日期:2023-04-23 11:17:52
2 [报告]
发表于 2015-01-05 21:48 |只看该作者
百分号%要转义
yiguihuo 发表于 2015-01-05 21:36
*/1 * * * *  ls /mnt |grep -v "`date +"%Y%m%d"`"|xargs rm -rf
删除今天以外的所有目录,这个看起来很简 ...

论坛徽章:
1
2015年迎新春徽章
日期:2015-03-04 09:54:45
3 [报告]
发表于 2015-01-05 21:59 |只看该作者
本帖最后由 yiguihuo 于 2015-01-05 22:07 编辑
bikkuri 发表于 2015-01-05 21:48
百分号%要转义

恩,百分号%要转义,这个从cron日志中可以看出来
(root) CMD (ls /mnt/|grep -v "`date +")
转义问题改完后,还是不能正确执行,这时cron日志已经可以正确显示命令了
(root) CMD (ls|grep -v "`date +"%Y%m%d"`'|xargs rm -rf)
这时还有一个更为重要的问题存在,而且这个问题非常严重

论坛徽章:
8
戌狗
日期:2013-10-12 11:37:19双子座
日期:2014-05-06 14:40:39巨蟹座
日期:2014-06-14 09:22:18戌狗
日期:2014-09-18 16:05:44巨蟹座
日期:2014-12-27 16:37:26酉鸡
日期:2015-01-20 18:39:022015年亚洲杯之沙特阿拉伯
日期:2015-04-20 22:38:242015亚冠之萨济拖拉机
日期:2015-06-19 16:01:03
4 [报告]
发表于 2015-01-05 22:40 |只看该作者
双引号没问题?

论坛徽章:
7
申猴
日期:2014-12-21 13:57:24巳蛇
日期:2014-12-25 22:27:08申猴
日期:2015-01-19 08:07:36辰龙
日期:2015-02-04 11:40:06处女座
日期:2015-02-04 11:40:412015年亚洲杯之卡塔尔
日期:2015-03-06 12:01:322015年亚洲杯之乌兹别克斯坦
日期:2015-03-31 13:43:57
5 [报告]
发表于 2015-01-06 08:17 |只看该作者
权限问题
命令需要用绝对路径

论坛徽章:
0
6 [报告]
发表于 2015-01-06 08:37 |只看该作者
@yiguihuo

写成一个脚本文件, 计划任务调用脚本文件即可避免此类问题
  1. today=`date +%Y%m%d`
  2. ls /mnt |grep -v ${today} | xargs rm -rf
复制代码

论坛徽章:
5
戌狗
日期:2014-06-09 10:29:10酉鸡
日期:2014-12-01 16:05:27处女座
日期:2015-01-07 18:35:262015亚冠之水原三星
日期:2015-06-03 09:26:222015亚冠之布里斯班狮吼
日期:2015-06-15 10:53:54
7 [报告]
发表于 2015-01-06 08:46 |只看该作者
删除的路径不对吧。。。
有没有报错 no such file or directory

论坛徽章:
0
8 [报告]
发表于 2015-01-06 08:47 |只看该作者
@kaede_1
你没有这个路径,不表示人家没有这个目录,centos rehl一般都有这个目录。

论坛徽章:
18
辰龙
日期:2014-05-21 21:01:4115-16赛季CBA联赛之深圳
日期:2016-12-23 13:51:3815-16赛季CBA联赛之北控
日期:2016-11-28 18:26:3815-16赛季CBA联赛之佛山
日期:2016-11-03 11:18:5815-16赛季CBA联赛之辽宁
日期:2016-07-10 16:09:4115-16赛季CBA联赛之江苏
日期:2016-02-20 23:09:202015亚冠之塔什干棉农
日期:2015-08-17 19:49:492015年亚洲杯之日本
日期:2015-04-30 01:24:342015年亚洲杯之约旦
日期:2015-04-01 00:37:182015年亚洲杯之沙特阿拉伯
日期:2015-03-02 15:55:40处女座
日期:2014-05-25 10:34:0020周年集字徽章-年
日期:2023-04-23 11:17:52
9 [报告]
发表于 2015-01-06 09:00 |只看该作者
*/1 * * * *  ⇒ * * * * *

论坛徽章:
5
戌狗
日期:2014-06-09 10:29:10酉鸡
日期:2014-12-01 16:05:27处女座
日期:2015-01-07 18:35:262015亚冠之水原三星
日期:2015-06-03 09:26:222015亚冠之布里斯班狮吼
日期:2015-06-15 10:53:54
10 [报告]
发表于 2015-01-06 09:01 |只看该作者
我的意思是,假如/mnt下有文件夹tmp  (/mnt/tmp)
那么你在home目录i执行这条命令时
ls /mnt |grep ... | 传递给rm的是tmp,即相当于在home目录下删除tmp文件夹,而home目录下并没有tmp文件夹
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP