Tente usar o caminho completo do programa em execução, como:
0 3 * * * /bin/bash /home/directedition/observatory/nmapscan.sh # JOB_ID_1
Eu tenho um script de shell que executa o nmap em um endereço e quero que ele faça isso diariamente para mim. Então eu adicionei uma referência a ele no meu crontab.
Infelizmente, por algum motivo, ele não reconhece os argumentos que estou enviando para o nmap. Enquanto ele roda bem quando eu o executo explicitamente, ele comete erros no cron no primeiro argumento.
Entrada do Cron:
0 3 * * * /home/directedition/observatory/nmapscan.sh # JOB_ID_1
Script:
#!/bin/bash
today=$(date +"%Y-%m-%d")
tempfilename=/home/directedition/observatory/scan-$today.temp.xml
filename=/home/directedition/observatory/scan-$today.xml
touch $tempfilename
chmod 640 $tempfilename
/usr/bin/nmap -A -T5 -O -v -oX $tempfilename 10.10.1.0-255 > /home/directedition/observatory/nmapoutput.txt
chown directedition $tempfilename
chmod 644 $tempfilename
mv $tempfilename $filename
Erro: nmap: invalid option -- 'A'
Eu posso embaralhar os argumentos, e o que eu colocar primeiro invariavelmente irá gerar erros.
Tente usar o caminho completo do programa em execução, como:
0 3 * * * /bin/bash /home/directedition/observatory/nmapscan.sh # JOB_ID_1