Używam Rasbian 3.12.26+ na modelu Pi B.
Oto jak wygląda mój wpis crona:
* * * * * sleep 11; { echo -en "\e[1;4;33m"; date; echo -en "\e[0m"; curl -k "http://sampleurl.com/update.php"; } >> /var/log/cron/calls.log
Oto jak wygląda mój dziennik:
-en \e[1;4;33m
Thu Sep 4 14:29:13 UTC 2014
-en \e[0m
This is output from curl!
Jednak po wklejeniu polecenia do bash działa to zgodnie z przeznaczeniem:
{ echo -en "\e[1;4;33m"; date; echo -en "\e[0m"; curl -k "http://sampleurl.com/update.php"; } >> /var/log/cron/calls.log
I wynik jest
Thu Sep 4 14:27:51 UTC 2014
This is output from curl!
Pierwszy wiersz jest podkreślony, pogrubiony i żółty zgodnie z przeznaczeniem.
Z jakiegoś powodu po uruchomieniu przez crontab echo wypisuje „-en” zamiast traktować go jako argument. W rezultacie sekwencje zmiany koloru nie są usuwane.
Co daje?
echo
(którą powłoka traktuje jako wbudowane polecenie) na/bin/echo
(który jest osobnym programem). (Jeśli to nie zadziała, spróbuj/usr/bin/echo
.)