1. 程式人生 > >crontab執行expdp命令無效

crontab執行expdp命令無效

redhat系統使用oracle使用者寫了如下指令碼,匯出oracle資料庫,按照日期命名

#!/bin/sh


BACKUPTIME=$(date +%Y%m%d)

expdp cem/[email protected] directory=DATA_PUMP_DIR schemas=cem_sx dumpfile=cemuat-$BACKUPTIME.dmp logfile=cemuat-$BACKUPTIME.log

~  
手動執行./ 可以正常匯出oracle資料庫,但是放在crontab中出現命令無效,經過網上查詢發現是沒有引入環境變數
30 1 * * * /bin/sh /home/oracle/autoBackupOracle.sh
參考http://blog.csdn.net/zhubin215130/article/details/43271835部落格實現無效,原因未知。加入這個 . /etc/profile;無效。

可以確定的是變數沒有引入,按照別人的方式也引入失敗,現改為如下:

30 1 * * * . ~/.bash_profile;  /bin/sh /home/oracle/autoBackupOracle.sh

手動引入“ . ~/.bash_profile; ”,執行成功。

總結:

crontab無效原因:

1.服務沒有啟動。

2.環境變數沒有引入

相關推薦

crontab執行expdp命令無效

redhat系統使用oracle使用者寫了如下指令碼,匯出oracle資料庫,按照日期命名 #!/bin/sh BACKUPTIME=$(date +%Y%m%d) expdp cem/[email protected] directory=DATA_PU

Linux Crontab執行hadoop命令指令碼失敗

   最近在寫一個Hadoop系列操作的排程指令碼,由crontab排程執行。指令碼單獨執行沒有任何問題,但是一旦執行hadoop相關操作,如hive、Hadoop相關命令,就莫名其妙的失敗。查了很多資料,後來才發現是環境變數的問題,需要在指令碼中新增“source /et

【Shell】關於shell指令碼中執行cd命令無效的分析

###Date: 2017/1/7 ###Author: SoaringLee ###Content:關於shell指令碼中執行cd命令無效的分析 ===========================================================

解決命令執行shell腳本成功,但crontab執行失敗

ges config 腳本監控 由於 data 路徑 amp 導致 bsp 實際生產案例 生產機房自建PPTP客戶端通過撥號連接到生產機房,但是一旦客戶端網絡是意外斷線再重新撥號 會產生IP沖突,於是寫了一個腳本監控PPTP的IP是否有多個(一般沖突以後會生成2個IP)

eclipse 執行自帶的maven命令無效

ima tail 自帶 dir tdi 配置 direct image mave 原文地址:https://blog.csdn.net/qq_26386171/article/details/78262702 下面加上(前提是你的環境變量裏已經配置過) -Dmaven.

Linux下的crontab定時執行任務命令詳解

   crontab命令常見於Unix和類Unix的作業系統之中,用於設定週期性被執行的指令。該命令從標準輸入裝置讀取指令,並將其存放於“crontab”檔案中,以供之後讀取和執行。該詞來源於希臘語 chronos(χρνο),原意是時間。通常,crontab儲存的指令被守護

如何用crontab每隔1分鐘執行一個命令列指令碼

我在/home/下面寫了一個a.sh#!/bin/sh echo hello > /home/hello.txt 然後在crontab -e中設定了*/1 * * * * /home/a.sh為何等了好幾分鐘,home下面還是沒有hello.txt呢?指定一下用什麼執行

解決命令執行shell指令碼成功,但crontab執行失敗

命令列執行指令碼成,但crontab執行shell指令碼不成功是由於兩個原因導致 解決方法 1. 路徑問題 檢視crontab中執行該指令碼的路徑是否正確。例如: */1 * * * * cd /mypath/;./my_shell.sh > /d

Crontab執行命令失敗 手工執行成功

今天開發說有一臺伺服器crontab任務執行異常。 同樣的賬戶上去手動執行命令就能正確執行該命令。當時就感覺遇到靈異事件了。 吃完飯再仔細看看。 先把crontab要執行的命令重定向錯誤輸出到檔案。 */ * * * * xxxx xxxx >

Crontab定時指令碼語句無效,直接執行指令碼就可以

 昨天寫了一個定時指令碼,用於每天早上從另外一臺機器scp日誌,然後對日誌進行分析。每當通過secureCRT連線到伺服器上直接執行指令碼的時候,沒有問題。但是當在crontab定時任務中執行該指令碼的時候就不能夠拉取到日誌內容了。 後面找同事問了一下,原因可能如下: (

執行gradle命令時出現JAVA_HOME設定無效的解決辦法

1.在執行gradle命令時,出現了以下錯誤: 這個時候以為是JAVA_HOME設定問題,於是前去設定JAVA_HOME 在使用者家目錄下,將.bashrc檔案結束位置加上下面語句 export JAVA_HOME=/usr/lib/jvm/java-7-oracl

Linux定時執行任務命令:at和crontab

本文介紹在Linux下的兩種定時執行任務的方法:at命令,以及crontab服務。 (1)at命令 假如我們只是想要讓特定任務執行一次,那麼,這時候就要用到at監控程式了。 設定at命令很簡單,指示定執行的時間,那麼就會在哪個時候執行。at類似列印 程序,會把任務放

docker執行centos映象後ifconfig命令無效

現象 docker pull ansible/centos7-ansible docker run -it -d ansible/centos7-ansible 進入映象執行ifconfig命令錯誤 原因 映象是最小化配置,並未安裝相關命令,所以如果其他命令無效,也

rpm -q vixie-cron =====> 檢測是否安裝 crontab 定時執行任務 命令格式與詳細例子

rpm -q vixie-cron      =====> 檢測是否安裝 crontab 基本格式 : *  *  *  *  *  command 分 時 日 月 周 命令 第1列表示分鐘1~59 每分鐘用*或者 */1表示 第2列表示小時1~23(0表

Crontab執行指令碼中的ssh命令訪問被拒絕

我們經常會通過crontab來執行定時任務,通常生產環境中在不同主機直接進行登入是通過ssh來連線的。比如我們通過在備份伺服器上設定定時任務,定期通過scp(使用SSH的遠端拷貝命令)來拷貝遠端伺服器的資料到備份伺服器上,這也是我遇到的一個事情。 環境描述: 指令碼與定

Linux 下Crontab 裡的命令無法執行的問題

自己對linux的熟悉程度也只是屬於入門級的小白,但今天居然也能幫師兄解決了一下這個小問題還是覺得很開心。我也知道入門不容易,所以一點點的經驗希望夠幫到需要的同學。 crontab 命令使用方式和linux的sh指令碼編寫程式碼,普通的任務百度一下很快就能夠將程式寫出來

老男孩教育每日一題-2017年5月7日-加餐-linux下面如何實現,執行rm命令,就顯示do not use rm command

linux別名 每日一題 1.題目-老男孩教育每日一題-2017年5月7日-加餐-linux下面如何實現,執行rm命令,就顯示do not use rm command2.要求結果[[email protected]/* */ ~]# rm do not use rm command3.答

java執行cmd命令

spa dbca script dmgr share pub pdm meeting 碎片 從網上找的java執行cmd命令的文章,摘抄一段。 java的Runtime.getRuntime().exec(commandStr)可以調用執行cmd指令。cmd /c dir

Centos 執行shell命令返回127錯誤

建數據庫 mysq data 存在 思路 功能 自動創建 運行 用戶 shell腳本功能:連接mysql,自動創建數據庫,腳本如下 mysql -h$MYSQL_IP -u$MYSQL_USER -p$MYSQL_PASSWORD --default-character-s

php 執行shell命令 打印錯誤信息

信息 資源 null function $cmd = "rm 1.txt";//刪除一個不存在的文件,查看報錯信息 $res = doShell($cmd); var_dump($res); //該函數沒有限制條件,可以直接放在代碼中使用 function doShell($cmd,$cwd=