linux 创建定时器运行sh命令

搞了一天时间,最后还是请教了朋友,终于把定时器crontab运行sh文件搞定,以防以后用,记录一下。

首先写好了sh文件,因为是从本地window系统写好以后复制到linux上面去的,需要把文件权限修改成可执行权限

chmod 777 文件名

运行./ss.sh命令发现无法运行,后来网站找资料是文件编码问题(linux编码问题很烦人)

vi ss.sh命令进去文件,在非编辑模式下运行

:set ff

看到的是

fileformat=dos

需要修改问unix,运行命令

set ff=unix

成功,再次运行./ss.sh文件成功执行。

接着就是加入定时任务中,这里耗费我半天的时间。

按照正常流程:

crontab -e

然后写入要执行的命令和时间(怎么写定时任务网上可以找很多)

加入以后可是死活不能不执行sh文件,网上找了很多方法,有说环境变量不对,有说路径不对的,反正我按照网上搜的方法都试一下,还是不行,都是以失败告终。

我把同样的代码放到另外一个服务器又可以成功执行,这个是我比较郁闷的事情,就这样浪费了一天时间。

第二天请教之前的一个同事帮忙,之前知道他对linux比较熟悉,差不多半个小时的时间,他找到了问题,问题立马解决。非常感谢他,还是文件编码问题。

解决方法:

首先crontab -e  进入定时文件,在非编辑的模式下

:set ff 

发现不是unix(就是这个原因,导致定时任务无法找到sh文件)

set ff=unix 修改编码

最后运行定时任务,终于成功了。

      

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值