本以為用crontab設定svn的定期更新任務是件非常容易的事情,實踐後方才知道,其實並不那麼容易。
設定例行性工作如下:
0 8 * * * /usr/bin/svn up /data/test
第二天,我收到了一封郵件,內容是svn更新失敗的訊息:
svn: can't convert string from native encoding to 'utf-8':
... ...
一看便知,是字元編碼出了問題。輸入locale命令,顯示如下:
lang=en_us.utf-8
lc_ctype="en_us.utf-8"
... ...
本地字元編碼也是utf-8,這就奇怪了。經過兩天的分析研究,才在網上找到了正確的解釋。
原來,crontab服務預設使用posix的字符集,你可以新增如下任務進行驗證:
* * * * * locale > /tmp/t
找到了癥結所在,問題就容易解決了。編寫sync_auto.sh指令碼,內容如下:
#!/bin/bash
export lc_all="en_us.utf-8"
/usr/bin/svn up /data/test
設定指令碼可執行:chmod a+x sync_auto.sh
重新設定例行性工作如下:
0 8 * * * /data/script/sync_auto.sh
第二天,該例行任務工作正常。^_^
crontab的設定方法
一般呼叫php某命令,可以用下面行 首先切到要執行的程式所在的目錄,然後呼叫php直譯器,一般可能php所在路徑並沒有包含在 crontab所需的環境裡.5 cd website protected usr local php bin php q yiic cron autoread yii框架在c...
系統的crontab設定 etc crontab
注意 基本上,etc crontab支援兩種輸入指令的方式,一種是直接以指令形式輸入,一種則是以目錄形式輸入。指令形式 01 test mail s test test home test test test.txt 使用者是test,且每小時執行一次指令mail 目錄形式 5 root run p...
SVN匿名訪問的設定
1.svn server預設需要提供身份驗證的 很不方便 2.設定身份驗證的方式 subversion authentication 3.修改配置檔案 httpd.conf 64位預設位置 c program files visualsvn server conf 將78行的 require val...