顯示具有 crontab 標籤的文章。 顯示所有文章
顯示具有 crontab 標籤的文章。 顯示所有文章

2014年1月16日 星期四

Cron job 為何有時候無法正確執行呢?


這樣可以先將 cron執行時的, 環境檔案匯出.

* * * * * /usr/bin/env > /path/to/your/home/directory/env.txt

最簡單的執行方式就是用絕對路徑執行看看, 並且寫個log

 * * * * * /path/to/the/ruby  /home/you/hello.rb >> /home/you/hell.log 2>&1




在Linux裡設置環境變量的方法(export PATH),有如下三種方法來設置環境變量



1、直接用export命令:#export PATH=$PATH:/opt/xxx/xxx/bin

檢查可以打 export 來check it .

2、修改profile文件: 
#vi /etc/profile 
在裡面加入:
export PATH="$PATH:/opt/xxx/xxx/bin"

3. 修改.bashrc文件:
# vi /root/.bashrc
在裡面加入:
export PATH="$PATH:/opt/xxx/xxx/bin"

第二,三方法需要重新登入系統才能生效,最後可以通過echo命令測試一下.

# echo $PATH 

 

 

2011年9月7日 星期三

用shell 來執行 wget

有時候設定Cron 時, 若是使用php 去跑, 有些環境變數要針對 Cron 來改寫. 所以或許可以使用wget 來取代.

cronWget.sh 程式碼:
=============================================
isLog=$1        
TargetURL=$2
LogFile=/var/log/cron.log
tmpLogFile=/var/log/cron.log.tmp
export LANG=en_US

if [ "$isLog" = "1" ]; then
  /usr/bin/wget -q -t 1 -O $tmpLogFile --no-check-certificate $TargetURL

  # append log file
  echo "----------END" >> $LogFile
  cat $tmpLogFile >> $LogFile
  # clean up
  rm -f $tmpLogFile
=============================================

Cron 設定方式  /home/cronWget.sh 0 http://192.168.0.1/cron/cron_task.php