variables no crontab [duplicado]

3

No nosso servidor linux, temos muitas entradas.

Muitas entradas são assim:

15 13 * * 3 /very/long/path/to/binary/run.sh ...

Essas entradas seriam mais fáceis de manter se eu pudesse escrever:

15 13 * * 3 $FPATH/run.sh

Onde eu poderia escrever este mapeamento:

FPATH=/very/long/path/to/binary
    
por Wolfgang Adamec 13.03.2014 / 11:07

3 respostas

6

Isso funciona perfeitamente, ou seja,

$ crontab -l
TESTDIR=/home/user/test

* * * * * $TESTDIR/script.sh

Dê uma olhada em

man 5 crontab

mais informações são encontradas lá.

    
por 13.03.2014 / 11:28
1

Basta incorporar isso no próprio crontab, por exemplo coloque sua linha FPATH (sem espaços) como a primeira linha do crontab.

    
por 13.03.2014 / 11:18
0

Você pode dar uma olhada no Arch Wiki ( link ). Na seção "Definindo variáveis globalmente", você encontra esta resposta:

A maioria das distribuições Linux lhe diz para alterar ou adicionar definições de variáveis de ambiente em / etc / profile ou outros locais. Certifique-se de manter e gerenciar as variáveis de ambiente e preste atenção aos vários arquivos que podem conter variáveis de ambiente. Em princípio, qualquer script de shell pode ser usado para inicializar variáveis ambientais, mas seguindo as convenções tradicionais do UNIX, essas instruções devem estar presentes apenas em alguns arquivos específicos. Os seguintes arquivos devem ser usados para definir variáveis de ambiente globais em seu sistema: / etc / profile, /etc/bash.bashrc e / etc / environment.

PS: Eu estou no trabalho e não posso testá-lo. Espero que funcione.

    
por 13.03.2014 / 11:16

Tags