While / Read / Do / Done Loop cortando a metade do arquivo de texto

0

Eu tenho um script bash onde executo um loop while/read/do/done que é alimentado de um arquivo de texto com mais de 200 valores nele. Eu tenho este script bash definido no meu cron para executar três vezes por dia. Eu estou correndo em um problema onde o ciclo de leitura enquanto não está terminando de ler linha por linha o arquivo de texto. Eu incluí todo o código relevante abaixo. Atualmente estou usando o Ubuntu 16.04 LTS Desktop.

O que poderia estar causando isso?

Código do script Bash:

while read point; do

  echo "${point}"

done < /home/admin/site_list

arquivo de lista de sites (amostra):

KBOS
KLWM
KOWD
KPYM

trabalho do crontab:

07 6 * * * time /home/admin/all.sh > /home/admin/logs/all1.log1 2>&1
08 10 * * * time /home/admin/all.sh > /home/admin/logs/all1.log2 2>&1 
14 13 * * * time /home/admin/all.sh > /home/admin/logs/all1.log3 2>&1 
    
por arnpry 07.12.2016 / 16:36

1 resposta

0

Você provavelmente deve redirecionar o stderr de time /home/admin/all.sh para o arquivo de log ou algum outro arquivo. Meu palpite é que você está perdendo a mensagem de erro. crond geralmente envia por e-mail qualquer saída stdout ou stderr para o proprietário da tarefa cron. Eu não posso dizer a partir de suas informações qual é o ID do usuário: pode ser root. Verifique o e-mail nessa máquina em busca de e-mails de crond para ver o que é dito.

    
por 07.12.2016 / 16:56