Discussion:
Regel in crontab met 'expect' genereert kennelijk een mailtje
(te oud om op te antwoorden)
Adri Verhoef
2023-02-24 12:20:27 UTC
Permalink
In mijn crontab heb ik een regel staan die elke 12 minuten over het uur
een file genereert en die dan op de sftp-server van Xs4all zet. Dit doe
ik d.m.v. 'expect':

(als losstaand shellcommando:)

O=/tmp/wcgresults_m1.html; printf "%s\n" 'set timeout 600' "spawn sftp ****@sftp.xs4all.nl" 'expect {' '"password:" {send "****\n";}' '}' 'expect {' '"sftp>" {send "put '$O' WWW/tmp/\n";send "quit\n";}' '}' 'expect { eof {exit 0;} }'

Hetzelfde gebeurt als ik via crontab die file ophaal:

35 * * * * O=/tmp/wcgresults_m1.html; printf "\%s\n" 'set timeout 600' "spawn sftp ****@sftp.xs4all.nl" 'expect {' '"password:" {send "****\n";}' '}' 'expect {' '"sftp>" {send "get 'WWW$O' /tmp/test.html\n";send "quit\n";}' '}' 'expect { eof {exit 0;} }' |expect

De file WWW/tmp/wcgresults_m1.html wordt keurig opgehaald als /tmp/test.html.
(Uiteraard staat er voor de '%' in crontab een backslash, zoals voorgeschreven.)

Het enige dat ik niet begrijp: waarom wordt er (kennelijk) door 'expect' een regel in de maillogfile genegeneerd?

Feb 24 12:35:02 host=smtps.xs4all.nl tls=on auth=on user=****@xs4all.nl from=a3 recipients=a3 smtpstatus=501 smtpmsg='501 5.1.7 Bad sender address syntax' errormsg='envelope from address a3 not accepted by the server' exitcode=EX_DATAERR

Het kan niet zijn dat willekeurig welke crontabopdracht een logregel genereert,
want om 13 minuten over het uur wordt een andere opdracht uitgevoerd en die
genereert geen logregel.

OPLOSSING: 'expect' genereert output, dus die output moet je weg- of opvangen.

Adri :)
--
2020 was een autobiografisch jaartal, daarvoor was het 1210; 2120 is het volgende.
https://nl.wikipedia.org/wiki/Autobiografisch_getal
Adri Verhoef
2023-02-24 13:13:38 UTC
Permalink
Op moederschip aarde schreef iemand die zich identificeerde als
Post by Adri Verhoef
2020 was een autobiografisch jaartal, daarvoor was het 1210; 2120 is het volgende.
Dat laatste jaartal moest 21200 zijn, er ontbrak een nul. Blijkbaar had ik het niet goed overgetypt.
https://www.volkskrant.nl/columns-opinie/wat-werkelijk-fantastisch-is-is-dat-2020-een-autobiografisch-getal-blijkt-te-zijn~b2d67825/
Loading...