Portál AbcLinuxu, 14. května 2025 00:51
19.3.2007 12:43 Fuky | skóre: 34 | blog: 4u Re: Příkaz mail a diakritika HEADER="MIME-Version: 1.0\n" HEADER="${HEADER}Content-Type: text/plain; charset=iso-8859-2\n" HEADER="${HEADER}Content-Transfer-Encoding: 8bit" SUBJECT="Bez diakritiky!" TO="user@domain" mail -a "$(echo -e $HEADER)" -s "$SUBJECT" "$TO" << EOF Příšerně žluťoučký kůň úpěl ďábelské ódy EOFMe ta cestina ale stejne nefunguje, muzete se podivat, jestli tam neni nejaka chybka? A jeste bych chtel zmenit lokalniho odesilatele mailu, jde to v tom skriptu nejak?
Me ta cestina ale stejne nefunguje
Možná hloupý dotaz, ale: nemáte systém v UTF-8 zatímco e-mail odesíláte v ISO8859-2?
A jeste bych chtel zmenit lokalniho odesilatele mailu, jde to v tom skriptu nejak?
Do hlavičky přidat pole From
.
UTF-8
, ale v mailovym klientovi, kde postu prijmu mam ISO8859-2
. Tak co mam tedy pouzit? UTF-8
? Jinak from
jsem zkousel, ale asi nejak spatne, jeste polaboruju.
Mam UTF-8, ale v mailovym klientovi, kde postu prijmu mam ISO8859-2
Tak to bude asi ten problém, protože ty znaky tam naťukáte v UTF-8 (a e-mailový klient by si měl poradit s více znakovými sadami).
Jinak from
jsem zkousel, ale asi nejak spatne, jeste polaboruju.
Teď střílím od boku, ale podobných polí je tam více (Reply-To
atp.), tak zkuste taky ty ostatní (inspirujte se ve "skutečném" e-mailu)...
MamAno, použijteUTF-8
, ale v mailovym klientovi, kde postu prijmu mamISO8859-2
. Tak co mam tedy pouzit?UTF-8
?
charset=UTF-8
. To co máte uvedené v mailovém klientovi je nejspíš kódování odchozí pošty.
-a
, který slouží ke vkládání příloh, mi nepřijde zrovna ideální řešení. Lepší řešení je s použitím systémových proměnných (příklad předpokládá, že systém je v UTF-8):
#!/bin/sh # export from="Jiřina Řežuchová <jirina@example.net>" export ttycharset=utf-8 export smtp=mail.example.net export predmet=`echo "Schůzka ohledně služební cesty" | base64` mail -s "=?UTF-8?B?$predmet=?=" franta@example.net << EOF Dobrý den, mohli bychom se někdy sejít ohledně domluvení služební cesty? Jiřina Ř. EOFV příkladu je zároveň ukázáno, jak lze vnutit diakritiku do předmětu zprávy. Proměnná
smtp
zajistí, že mail se skutečně bude tvářit, jako by dorazil z adresy definované ve from
a ne ze systémového účtu, z kterého byl posílán.
server:/home# ./mail ./mail: line 7: base64: command not foundproc to?
base64
. Asi bude nutné jej doinstalovat…
nenasel jsem zadny balicek, ktereho by byl soucasti...
base64
je součástí balíčku coreutils
, takže by měl být na každém systému.
Nestalo se ale, že jste psal |
pomocí Alt
klávesy a držel jste ji i při stisku mezerníku, takže tam není mezera, ale paznak a bash hledá jiný soubor?
(Mimochodem, soubor base64
by měl být v /usr/bin
)
/usr/bin
v cestě? Když zkusíte spustit přímo /usr/bin/base64
, dostanete také chybu, že příkaz neexistuje?
server:~# locate base64 /usr/lib/asterisk/modules/func_base64.so /usr/lib/python2.4/base64.py /usr/lib/python2.4/base64.pyc /usr/lib/python2.4/email/base64MIME.py /usr/lib/python2.4/email/base64MIME.pyc /usr/lib/python2.4/encodings/base64_codec.py /usr/lib/python2.4/encodings/base64_codec.pyc /usr/share/doc/openssl/doc/crypto/BIO_f_base64.pod
Tiskni
Sdílej:
ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.