今天想给服务器加个自动备份mysql数据库的功能(别怪我这么久才加,阿里云每天全盘备份的,不怕丢数据库),本以为只要5分钟就能搞定的,结果入了两个大坑. 我的crontab是这样写的: * * * mysqldump -u user -pxxxx database > "/alidata/backup/imyzf.com/$(date +%F\ %T).sql" 首先,是百分号(%). 在crontab -e中输入的命令里,第一个%会被认为是标准输入的开始,接下来的%都会被认为是…
为了定时监控Linux系统CPU.内存.负载的使用情况,写了个Shell脚本,当达到一定值得时候,发送邮件通知.需要用到Crontab的定时任务去执行这个脚本,但是发现通过命令(./test.sh)执行Shell文件的时候,可以获取Linux的环境变量;可是通过Crontab做的定时任务,无法获取. 查找资料之后发现,crontab有一个坏毛病,就是它总是不会缺省的从用户profile文件中读取环境变量参数,经常导致在手工执行某个 脚本时是成功的,但是到crontab中试图让它定期执行时就是会出…
一. 环境变量     应用程序在执行的时候,可能需要获取系统的环境变量,从而执行一些相应的操作.     在linux中有两种方法获取环境变量,分述如下.   1.通过main函数的参数获取环境变量      main函数的多种定义方式: int main(void); int main(int argc, char* argv[ ]); int main(int argc, char* argv[ ], char* env[ ] )     方式1和方式2比较常见,下面介绍一下方式3: 第三…
在上文中曾说到: 所谓的环境变量的真实面目其实就是个任意字符串 Bash 在启动时会将 environ 数组中包含 = 号的字符串导入成为自己的变量 Bash 在启动外部命令时会将自己内部标记为环境变量的变量重组成字符串数组赋值给 environ 本文中继续深入讲三点: environ 数组中可能存在 = 左边名字相同的元素,也就是同名的环境变量,Bash 是怎么导入的? Bash 还可以从环境变量中导入函数,甚至同时导入两个同名的变量和函数 Bash 还可以同时导出两个同名的变量和函数 如果有…
***Linux 环境变量指系统运行程序或命令的能快速找到其位置等其它功能,不用输入复杂命令.以$PATH环境变量为例子, $PATH决定了shell指定寻找命令或程序的路径,比较执行ls命令,如果没有$PATH环境变量,执行ls命令需要绝对路径执行/bin/ls, 如果设置了$PATH环境变量,只要执行ls命令就会自动执行. ***Linux环境变量分单一用户环境变量和系统全局用户环境变量,单一用户环境变量配置文件在用户家目录.bash_profile, 修改此配置文件只对当前用户生效,其它用…
两种方式设置环境变量: 1,添加到环境变量路径$PATH中 # 加到PATH末尾 export PATH=$PATH:/path/to/your/dir # 加到PATH开头 export PATH=/path/to/your/dir:$PATH 2,命名一个新带环境变量 环境变量的作用域通常有三个: 1,当前终端:export CLASS_PATH=./JAVA_HOME/lib:$JAVA_HOME/jre/lib 2,当前用户:写入用户主目录下的.bashrc文件 vim ~/.bashr…
部署了一个新的tomcat到一个新的用户下,发下启动失败了 /home/personal/apache-tomcat/bin/catalina.sh: line 434: /usr/lib/jvm/java-1.8.0-openjdk-1.8.0.102-4.b14.el7.x86_64/jre/bin/java: No such file or directory 这里日志说启动时找java虚拟机时没找到,去看了下,果然不对 [personal@ZJHZ-CMREAD-TEST126 /]$…
1.crontab简单使用 cmd 其实就是5个星星的事情,随便百度一下吧 5个时间标签用来标注执行的设定.比如每5分钟执行一次/5 * * * cmd 要特别注意 2.有些命令在命令行里执行很好,到了crontab里面不能正常执行,就是因为环境变量问题. crontab在执行命令的时候不会去执行环境变量的那个脚本所以可以用两种方法来讲解: 2.1在你的启动脚本里面写那些export的环境变量的定义然后再执行: 2.2在脚本里面用(bash) source /etc/profile 把java的…
参考资料:http://blog.slogra.com/post-238.html 1. 问题描述 一段数据处理的 shell 程序,在 shell 中手动运行,可以正确执行.但是,把它放在 crontab 列表里,就会报错,提示 "matlab: command not found.". AutoRefreshData.sh 的部分内容如下: [She@She ~]$ cat /home/She/data/AutoRefreshData.sh#!/bin/bash ... Matla…
原文连接:http://blog.csdn.net/zc02051126/article/details/20480289 come from http://www.360doc.com/content/12/1010/14/7492958_240641022.shtml 设置了一个crontab 30 0 * * * cd /home/work/user/huangbx/research/getfeature/data/current; sh resample.sh &>/dev/null…