-2

別のPythonスクリプトを呼び出しているbashスクリプトがあります。

Pythonグローバル変数のため、これはcronで実行されていません。スクリプトの下を見つけてください。スクリプトは、ログを圧縮してAmazons3に移動することを目的としています。ターミナルからスクリプトを実行すると、機能します。しかし、cronから実行すると、コンテンツが圧縮され、Pythonスクリプトであるs3cmdが失敗します。cronレベルでpythonグローバル変数を設定するのを手伝ってくれる人はいますか?

#!/bin/bash
cd /applications/java/tomcat-instance/foundation/logs/
sudo find /applications/java/tomcat-instance/foundation/logs/ -mtime +1 | xargs tar -czvPf tomcat_logs_`date +%Y%m%d`_`date +%H`.tar.gz
/usr/bin/python s3cmd put /applications/java/tomcat-instance/foundation/logs/tomcat_logs_`date +%Y%m%d`_`date +%H`.tar.gz s3://merck-ghh-logs/preview/deliver$
sudo find /applications/java/tomcat-instance/foundation/logs/ -mtime +7 -exec rm {} \;
4

2 に答える 2

0

s3cmd-へのフルパスを指定します。

 /usr/bin/python /path/to/s3cmd put ....
于 2013-03-18T11:58:03.533 に答える
0

CronJobはrootユーザーの下で実行されています。

私はsudo命令を出しました。一部のコマンドがいつ実行されないかを確認しました。

  1. Cronjobはrootの下で実行されています。
  2. その中で須藤が使われています。
于 2013-09-13T04:55:27.070 に答える