使用cron作业执行python脚本

时间:2018-10-27 16:17:41

标签: python cron execute

我正在尝试在cron作业中每分钟执行一次python脚本。我可以使用终端执行命令。

我的脚本可以通过以下命令执行:

 python /home/pi/Desktop/sensor_testing/dht11.py

,然后在sudo crontab -e中输入:

***** python /home/pi/Desktop/sensor_testing/dht11.py

任何建议为何不起作用?

3 个答案:

答案 0 :(得分:0)

看看here,这是在您的python脚本中添加shebang的很好解释。它可以让您轻松运行脚本而无需显式调用python,唯一要做的就是向shebang和您的set添加正确的python路径。

tl; dr来自链接:

要运行python 3脚本,请将其添加到脚本顶部:

#!/usr/bin/env python3

或python 2.7的

#!/usr/bin/env python2

答案 1 :(得分:0)

时间字段以空格分隔 ,即

Points* createPoints (const char* filename){
  double x, y, z;

  std::ifstream inFile;
  inFile.open(filename);

  Points p;
  inFile >> p.pointsSize;

  p.array = new Point*[p.pointsSize];

  for(int i=0; i<p.pointsSize; i++){
     inFile >> x;
     inFile >> y;
     inFile >> z;
     p.array[i] = createPoint (x,y,z);
  }

  Points* ptr = &p;
  return ptr;
}


// ERROR MUST BE DELETING POINTS
void displayPoints (Points* p){
    Points n = *p;
    int size = n.pointsSize;
    Point** a = n.array;
    for(int i=0; i<size; i++){
        std::cout<<"Displaying Point "<<i<<"..."<<std::endl;
        displayPoint(a[i]);
    }
}

void destroyPoints (Points* p){
    Points n = *p;
    int size = n.pointsSize;
    Point** a = n.array;
    for(int i=0; i<size; i++){
        std::cout<<"Displaying Point "<<i<<"..."<<std::endl;
        displayPoint(a[i]);
    }
}

答案 2 :(得分:0)

它应该很简单:

将绝对python路径放在脚本顶部首先:

#!/usr/local/bin/python   # Just assuming this path

使文件可执行:

chmod +x /home/pi/Desktop/sensor_testing/dht11.py

然后放在cron中。

***** /home/pi/Desktop/sensor_testing/dht11.py