当前位置: 技术问答>linux和unix
写了一个脚本,没有任何参数,手动执行可以但是在crontab里就提示参数无效
来源: 互联网 发布时间:2016-09-05
本文导语: 脚本内容如下: #!/bin/bash USERS=(xy1 xp2 web); DMP_DIR=/opt/www/dmp_beifen/zt_tmp_beifen; for i in "${USERS[@]}"; do exp $i/$i@sryx file=$DMP_DIR/$i_$(date +%Y%m%d_%H%M%S -d '0 days ago').dmp; #echo $i; done; 我编辑的是/etc...
脚本内容如下:
我编辑的是/etc/crontab,内容如下:
在我的mail下出现以下信息:
Sorry,parameter is invalid !
请问为什么会出现这个问题?我手动执行都是可以的,也能看到导出表的过程。把循环去掉,直接用3个exp导出也报那个错误,实在找不出原因~~
#!/bin/bash
USERS=(xy1 xp2 web);
DMP_DIR=/opt/www/dmp_beifen/zt_tmp_beifen;
for i in "${USERS[@]}"; do
exp $i/$i@sryx file=$DMP_DIR/$i_$(date +%Y%m%d_%H%M%S -d '0 days ago').dmp;
#echo $i;
done;
我编辑的是/etc/crontab,内容如下:
* * * * * root /root/zt_exp_bak/exp.sh
在我的mail下出现以下信息:
Sorry,parameter is invalid !
请问为什么会出现这个问题?我手动执行都是可以的,也能看到导出表的过程。把循环去掉,直接用3个exp导出也报那个错误,实在找不出原因~~
|
要加载一个数据库的环境变量
# ORACLE
export PATH=$PATH:/oracle/base/product/11.1.0/client_1/bin
export ORACLE_HOME=/oracle/base/product/11.1.0/client_1
# ORACLE
export PATH=$PATH:/oracle/base/product/11.1.0/client_1/bin
export ORACLE_HOME=/oracle/base/product/11.1.0/client_1
|
楼上说了 操作所需要的环境变量要加上
很多人的脚本不执行 都是这个原因
很多人的脚本不执行 都是这个原因
|
其实,比较好的做法就是在脚本里export那些环境变量!!不依赖用户自身设定的环境变量
|
又是环境变量