Eu tenho um arquivo ("IPcontainer") que contém um endereço IP singular e quero usá-lo da seguinte forma:
6tunnel 80 $(< IPcontainer) 80
Infelizmente, isso só funciona quando faço isso manualmente, em vez de quando uso como um cronjob:
0 * * * * 6tunnel 80 $(< /home/<MYUSERNAME>/IPcontainer) 80
Até onde eu sei, o cron depende de caminhos absolutos.
Como preciso alterá-lo para que funcione?
Responder1
Isso porque cron
usa /bin/sh
por padrão - que não suporta a $(< file)
sintaxe
Você pode substituir
$(< /home/<MYUSERNAME>/IPcontainer)
pelo POSIX
$(cat /home/<MYUSERNAME>/IPcontainer)
ou diga cron
para usar o bash explicitamente
SHELL=/bin/bash
0 * * * * 6tunnel 80 $(< /home/<MYUSERNAME>/IPcontainer) 80
Veja também