O trabalho do Cron não funciona Linux Mint 18

0

Por alguma razão, não consigo fazer um trabalho cron simples trabalhando no meu sistema Mint 18 KDE.

Este é o trabalho, ele diz a um script para ser executado a cada minuto. Veja a linha crontab que recebo quando digito crontab -l :

# m h  dom mon dow   command
1   *   *  *   *     sh /home/martien/crontest.sh

Este é o script crontest.sh :

#! /bin/bash
cd /home/martien/archives/
DIRECTORY='webcam-''date +%y-%m-%d-%H-%s'
mkdir ~/archives/$DIRECTORY

Estas são as propriedades do script

-rwxrwxr-x 1 martien martien  110 Apr  2 07:35 crontest.sh

O arquivo em /var/spool/cron/crontabs/ confirma a existência do cron job.

Cron é executado:

root       953     1  0 06:50 ?        00:00:00 /usr/sbin/cron -f

O script é executado quando eu digito isso na linha de comando:

sh /home/martien/crontest.sh

Eu corro o Mint 18 (Ubuntu Xenial).

    
por Martien Lubberink 01.04.2017 / 23:07

1 resposta

4

Sua entrada cron é executada uma vez por hora, um minuto depois:

 1 * * * * sh /home/martien/crontest.sh

Se você quiser cada minuto, use isso:

 * * * * * /home/martien/crontest.sh 

Como você declarou que seu script é um script bash e definiu que ele seja executável, basta chamá-lo diretamente. Não escreva um script bash e use sh para executá-lo, pois em alguns sistemas eles realmente são shells diferentes.

Seu script também pode ser alterado:

#!/bin/bash
cd /home/martien/archives
DIRECTORY="webcam-$(date +'%y-%m-%d-%H-%s')"
mkdir "$DIRECTORY"

Eu citei suas variáveis quando elas são usadas e mudei de backticks para o mais moderno e consistente $(...) construct.

    
por 01.04.2017 / 23:10