crontab运行脚本存在两大问题:环境变量和路径,从而导致单独运行脚本没问题,但用crontab运行就报错。

1、环境变量

  描述问题:crontab: usage error: no arguments permitted after this option

  因为crontab不提供环境,所以需要自己在shell中加入,或者全部用绝对路径。简单的方法:控制台输入

[user@a ~]# echo $PATH
/your/path/1:/your/path/2………………

  然后在脚本中export

export PATH=/your/path/1:/your/path/2…………

2、路径

  描述问题:单独运行时能够找到文件,但crontab运行时找不到(诸如此类的问题)。

  如果你在脚本中用到了${PWD}等涉及相对路径的参数,就会出现这种问题。比如你的脚本放在/home/user/shell路径下,脚本中写的日志输出路径为${PWD}/shell.log,单独运行脚本时你可以在/home/user/shell下找到shell.log,但用crontab运行时,shell.log就会出现在/home/user目录下。可见,crontab运行shell时${PWD}中存储的是不是脚本所在路径,而是脚本执行用户的home路径。解决方法:使用绝对路径/home/user/shell/shell.log或修改为${PWD}/shell/shell.log。

转载于:https://www.cnblogs.com/rouge/p/3698666.html

单独运行shell脚本与crontab运行shell脚本的区别相关推荐

  1. linux sftp账号密码脚本传文件,关于shell:如何使用Bash脚本中的密码运行sftp命令?...

    我需要从Linux主机使用sftp将日志文件传输到远程主机.我的操作组已为我提供了相同的凭据.但是,由于我无法控制其他主机,因此无法生成RSA密钥并与其他主机共享. 那么,有没有一种方法可以通过cro ...

  2. 脚本运行显示服务器超时,java执行shell脚本超时

    java执行shell脚本超时 [2021-02-11 04:20:34]  简介: 系统运维 在数据库运维的过程中,Shell 脚本在很大程度上为运维提供了极大的便利性.而shell 脚本参数作为变 ...

  3. linux shell运行脚本命令行参数,shell脚本命令行参数简介

    之所以用到命令行参数,关键在于shell脚本需要与运行脚本的人员进行交互. bash shell提供了命令行参数添加在命令后面的数据值).命令行选项修改命令行为的单字符值)和直接读取键盘输入. 1.命 ...

  4. linux运行powershell,linux – 是否可以编写一个在bash / shell和PowerShell中运行的脚本?...

    我需要创建一个集成脚本来设置一些环境变量,使用wget下载文件并运行它. 挑战在于它需要是可以在Windows PowerShell和bash / shell上运行的SAME脚本. 这是shell脚本 ...

  5. 使用shell脚本监控程序的运行和停止

    最近在自学shell,编写了一个shell脚本监控程序的运行,打印出开始时间和结束时间,查了一些资料,写了一个简单的脚本,希望对大家有用. #!/bin/bash# 指定一个写入开始和结束时间的txt ...

  6. Shell脚本:后台运行

    1. 名词解释 名词(中文) 名词(英文) 解释 会话 Session 每打开一次终端(本地或远程)登录Linux,都会生成一个新的会话:除此之外,程序中也可以调用函数setsid创建一个新的会话:脚 ...

  7. linux 运行脚本not found,运行 shell 脚本时报错[[ : not found解决方法

    今天通过容器执行一个 shell 脚本,总是报错 [[ : not found"解决方法 查看源代码是这样写的: if [[ "${pod_status}" == &qu ...

  8. crontab执行shell脚本日志中出现乱码

    使用nutch开源的搜索引擎抓取网页信息,通过计划任务crontab执行shell脚本,并将启动信息记录进日志文件,但是每次都会出现乱码,如图所示 经过反复测试,排除了java程序问题,文件权限问题, ...

  9. shell学习之定时运行作业

    当你开始使用脚本时,可能会想要在某个预设时间运行脚本. Linux系统提供了多个在预选时间运行脚本的方法:at命令和cron表,来安排脚本的运行时间和频率. 一.用at命令来计划执行作业 at命令允许 ...

最新文章

  1. 统计学习三要素 模型+策略+算法
  2. PCANet --- 用于图像分类的深度学习基准
  3. CString::Format
  4. matplotlib可视化必知必会富文本绘制方法
  5. [转]ORACLE 异常错误处理
  6. element-ui的表单校验;el-form表单校验;el-form表单自定义校验;手机号校验;车牌号校验;车牌号正则校验;
  7. 南邮哈夫曼编码c语言代码_漫画:“哈夫曼编码” 是什么鬼?
  8. poj 1904 King's Quest 强连通分量+匹配
  9. 「人物特写」国产手机操作系统突围任重而道远,创新才是关键
  10. 时间格式 asp.net
  11. mysql优化必知(mysql的语句执行顺序)
  12. Django 优秀资源大全
  13. 随笔篇----比特的传输
  14. 立方根c语言,在C ++中找到数字的立方根
  15. html 怎么让背景图铺满整个页面
  16. 机器人编程趣味实践19-武林秘籍(文档)
  17. 抖音蓝V如何认证,蓝V号与普通号的区别?
  18. 2020,300道高级iOS开发面试题(最新整理)
  19. iPhone 可以DIY了?苹果推出自助维修计划
  20. SpringCloud OpenFeign 整合 logbook 实现链路日志

热门文章

  1. 《剑指offer》构建乘积数组
  2. 《剑指offer》跳台阶
  3. DJANGO MODELS通过DATETIMEFIELD保存到MYSQL的时间的时区问题
  4. 搭建hbase-0.94.26集群环境
  5. Kafka实践:到底该不该把不同类型的消息放在同一个主题中
  6. 如何用ABP框架快速完成项目(2) - 快的定义!
  7. ARVR编辑器V1.2.4曝光,原来好作品都是在这诞生的!
  8. 中国物联网产业RFID发展机遇分析
  9. iOS数据存储——沙盒。
  10. Linux下搭建lamp论坛(phpwind+wordpress+discus)