Você pode enviar um email com um comando como este:
mail -s 'Subject' [email protected] < log.txt
mail
espera um fluxo de entrada, se não houver nenhum, obtém entrada padrão (isto é, digita algo). O operador <
(unix file-stream) diz ao mail para ler o conteúdo do arquivo, em vez de / dev / stdin (que também é apenas um arquivo).
Adicionar um anexo parece um pouco mais difícil:
Se você quiser verificar se o arquivo está vazio ou não, você pode fazer um teste como este:
if [ -s test.txt ];
then
echo "file is not empty";
fi
Assim, seu comando ficaria assim:
if [ -s log.txt ]; then mail -s 'Subject' [email protected] < log.txt; fi