mail, mailx, Mail — E-Mails senden und empfangen
SYNOPSIS
mail [-dEIinv] [-a header] [-b bcc-addr] [-c cc-addr] [-r from-addr] [-s subject] [--] to-addr
...
mail [-dEIiNnv] -f [file]
mail [-dEIiNnv] [-u user]
DESCRIPTION
mail ist ein intelligentes E-Mail-Verarbeitungssystem, das eine Befehlssyntax aufweist, die an ed(1) erinnert,
wobei Zeilen durch Nachrichten ersetzt werden.
Die Optionen sind wie folgt:
-a Gibt zusätzliche Header-Felder auf der Kommandozeile an, z. B. "X-Loop: foo@bar" usw.
Sie kann auch verwendet werden, um die MIME-Header zu überschreiben, die mail standardmäßig jeder ausgehenden E-Mail hinzufügt, siehe
„Zeichensätze und MIME“ unten. Sie müssen Anführungszeichen verwenden, wenn die Zeichenkette Leerzeichen enthält.
Dieses Argument kann mehrmals angegeben werden, die Header werden dann aneinandergehängt.
-b bcc-addr
Sendet Blindkopien an bcc-addr.
-c cc-addr
Sendet Kohlenkopien an eine Liste von Benutzern. cc-addr sollte eine durch Kommas getrennte Liste von Namen sein.
-d Veranlasst mail, alle Arten von Informationen auszugeben, die für die Fehlersuche bei E-Mails nützlich sind.
-E Verhindert das Senden von Nachrichten mit einem leeren Textkörper.
-f Verwendet eine alternative Mailbox. Standardmäßig ist dies die Mailbox des Benutzers, wenn keine Datei angegeben ist. Wenn
mail beendet wird, schreibt mail die nicht gelöschten Nachrichten zurück in diese Datei.
-I Erzwingt, dass mail im interaktiven Modus ausgeführt wird, auch wenn die Eingabe nicht von einem Terminal stammt. Insbesondere das Sonderzeichen ~, das beim Senden von E-Mails verwendet wird, ist nur im interaktiven Modus verfügbar.
-i Ignoriert TTY-Interrupt-Signale. Dies ist besonders nützlich, wenn mail über laute Telefonleitungen verwendet wird.
-N Verhindert die anfängliche Anzeige der Nachrichtenheader beim Lesen von E-Mails oder beim Bearbeiten eines E-Mail-Ordners.
-n Verhindert das Lesen von /etc/mail.rc beim Start.
-r from-addr
Verwendet from-addr als Absenderadresse in der Nachricht und im Umschlag. Überschreibt alle from-Optionen in den Startdateien.
-s subject
Gibt subject auf der Kommandozeile an (nur das erste Argument nach dem -s-Flag wird als Betreff verwendet; achten Sie darauf, Betreffzeilen mit Leerzeichen in Anführungszeichen zu setzen).
-u user
Entspricht:
$ mail -f /var/mail/user
mit dem Unterschied, dass die Sperrung erfolgt.
-v Ausführlicher Modus. Die Details der Zustellung werden auf dem Terminal des Benutzers angezeigt.
-- Ende der Optionen. Alle weiteren Argumente werden als direkte Empfängeradressen behandelt.
Hinweis: Aus Sicherheitsgründen wird der Separator -- dringend für Skripte empfohlen, die E-Mails an Adressen senden müssen, die aus nicht vertrauenswürdigen Quellen stammen (z. B. Webformulare).
Startaktionen
Beim Start führt mail die Befehle in der Systembefehlsdatei, /etc/mail.rc, aus, es sei denn, dies wird explizit durch die Verwendung der Option -n verhindert. Als Nächstes werden die Befehle in der persönlichen Befehlsdatei des Benutzers, ~/.mailrc, ausgeführt. Anschließend untersucht mail die Befehlszeilenoptionen, um festzustellen, ob der Benutzer das Senden einer neuen Nachricht oder die Untersuchung vorhandener Nachrichten in einer Mailbox angefordert hat.
Nachrichten senden
Um eine Nachricht an eine oder mehrere Personen zu senden, kann mail mit Argumenten aufgerufen werden, die die Namen der Empfänger angeben. Anschließend werden Sie aufgefordert, Ihre Nachricht einzugeben und mit Strg+D (^D) am Anfang einer Zeile abzuschließen. Der folgende Abschnitt „Antworten auf oder Verfassen von Nachrichten“ beschreibt einige Funktionen von mail, die Ihnen beim Verfassen Ihres Schreibens helfen können.
Nachrichten lesen
Normalerweise wird mail ohne Argumente aufgerufen, um Ihr Postfach zu überprüfen und dann eine einzeilige Kopfzeile für jede gefundene Nachricht auszugeben. Die aktuelle Nachricht ist standardmäßig die erste Nachricht (Nummer 1), und diese kann mit dem Befehl print (der als p abgekürzt werden kann) ausgegeben werden. Das Navigieren zwischen den Nachrichten ähnelt dem Navigieren zwischen Zeilen in ed(1). Sie können + und - verwenden, um vorwärts und rückwärts zu springen, oder einfach eine Nachrichtennummer eingeben, um direkt zu dieser Nachricht zu gelangen.
Nachrichten verwerfen
Nachdem Sie eine Nachricht überprüft haben, können Sie sie löschen (d) oder beantworten (r). Das Löschen führt dazu, dass das mail-Programm die Nachricht vergisst. Dies ist nicht irreversibel; die Nachricht kann mit ihrer Nummer wiederhergestellt (u) werden, oder die mail-Sitzung kann durch Eingabe des Befehls exit (x) beendet werden. Gelöschte Nachrichten verschwinden jedoch in der Regel für immer.
Nachrichten angeben
Befehle wie print und delete können eine Liste von Nachrichtennummern als Argumente akzeptieren, um sie auf mehrere Nachrichten gleichzeitig anzuwenden. So löscht delete 1 2 die Nachrichten 1 und 2, während delete 1-5 die Nachrichten 1 bis 5 löscht.
Nachrichten können auch mit einer der folgenden Kategorien ausgewählt werden:
* alle Nachrichten
$ letzte Nachricht
:d gelöschte Nachrichten
:n neue Nachrichten
:o alte Nachrichten
:r gelesene Nachrichten
:u ungelesene Nachrichten
Der Befehl top, der die ersten Zeilen einer Nachricht ausgibt, könnte beispielsweise in top * verwendet werden, um die ersten Zeilen aller Nachrichten auszugeben.
Antworten auf oder Verfassen von Nachrichten
Sie können den Befehl reply verwenden, um eine Antwort auf eine Nachricht zu erstellen und diese an den Absender zurückzusenden. Der Text, den Sie anschließend eingeben, bis zu einem Dateiende, definiert den Inhalt der Nachricht. Während Sie eine Nachricht verfassen, behandelt mail Zeilen, die mit dem Tilde-Zeichen (~) beginnen, besonders. Das Eingeben von ~m (allein in einer Zeile) fügt beispielsweise eine Kopie der aktuellen Nachricht in die Antwort ein und rückt sie um einen Tabulator ein (siehe die Variable indentprefix unten). Andere Escape-Sequenzen legen das Feld „Betreff“ fest, fügen Empfänger zur Nachricht hinzu oder entfernen sie und ermöglichen Ihnen, zu einem Editor zu wechseln, um die Nachricht zu bearbeiten, oder zu einer Shell, um einige Befehle auszuführen. (Diese Optionen sind in der folgenden Zusammenfassung aufgeführt.)
Beenden einer Mail-Verarbeitungssitzung
Sie können eine Mail-Sitzung mit dem Befehl quit (oder q) beenden. Nachrichten, die bereits betrachtet wurden, werden in Ihre mbox-Datei gespeichert, es sei denn, sie wurden gelöscht, in diesem Fall werden sie verworfen. Ungeprüfte Nachrichten werden an das Postamt zurückgesendet (siehe die Option -f oben).
Persönliche und systemweite Verteilerlisten
Es ist auch möglich, persönliche Verteilerlisten zu erstellen, so dass Sie beispielsweise eine E-Mail an „cohorts“ senden und diese an eine Gruppe von Personen weiterleiten können. Solche Listen können definiert werden, indem Sie eine Zeile wie
alias cohorts bill ozalp jkf mark kridle@ucbcory
in der Datei .mailrc in Ihrem Home-Verzeichnis platzieren. Die aktuelle Liste der Aliasse kann mit dem Befehl alias in mail angezeigt werden. Systemweite Verteilerlisten können erstellt werden, indem Sie die Datei /etc/aliases bearbeiten (siehe aliases(5)); diese werden in einer anderen Syntax gespeichert. In mail werden persönliche Aliasse erweitert, wenn E-Mails an andere gesendet werden, so dass die Empfänger antworten können. Systemweite Aliasse werden nicht erweitert, wenn die E-Mail gesendet wird, aber alle Antworten, die an die Maschine zurückgesendet werden, haben die systemweite Alias-Erweiterung, da alle E-Mails über einen MTA (Mail Transfer Agent) laufen.
Empfängeradressspezifikationen
Empfängeradressen (alle Felder „To“, „Cc“ oder „Bcc“) unterliegen der Erweiterung, wenn die Option expandaddr gesetzt ist.
Eine Adresse kann wie folgt erweitert werden:
Eine Adresse, die mit einem Pipe-Zeichen (|) beginnt, wird als auszuführender Befehl behandelt. Der Befehl, der unmittelbar auf das | folgt, wird mit der Nachricht als Standardeingabe ausgeführt.
Eine Adresse, die mit einem +-Zeichen beginnt, wird als Ordner behandelt.
Eine Adresse, die ein /-Zeichen enthält, aber keine !, % oder @-Zeichen, wird ebenfalls als Ordner behandelt.
Wenn keine der oben genannten Bedingungen zutrifft, wird der Empfänger als lokale oder Netzwerk-Mail-Adresse behandelt.
Wenn die Option expandaddr nicht gesetzt ist (Standardeinstellung), wird keine Erweiterung durchgeführt, und der Empfänger wird als lokale oder Netzwerk-Mail-Adresse behandelt.
Zeichensätze und MIME
Im Allgemeinen verarbeitet Mail weder unterschiedliche Zeichensätze noch andere MIME-Funktionen. Insbesondere werden keine Konvertierungen zwischen Zeichensätzen beim Anzeigen oder Senden von E-Mails durchgeführt.
Ab April 2017 fügt diese Version von Mail als Debian-Erweiterung jedoch einige MIME-Header zu jeder ausgehenden E-Mail hinzu, um anzugeben, dass die E-Mail als 8-Bit-Plaintext-Daten gesendet wird, die den aus den aktuellen Gebietsschema-Einstellungen (7) ermittelten Zeichensatz verwenden. Die Befehlszeilenoption -a kann verwendet werden, um diese Header zu überschreiben, zum Beispiel:
$ mail -a 'Content-Type: text/plain; charset="ISO-8859-1"'
setzt den Header, der einen Legacy-Zeichensatz angibt.
ZUSAMMENFASSUNG
(Angepasst aus dem „Mail Reference Manual“.)
Jeder Befehl wird in einer eigenen Zeile eingegeben und kann Argumente nach dem Befehlswort haben. Der Befehl muss nicht vollständig eingegeben werden – der erste Befehl, der mit dem eingegebenen Präfix übereinstimmt, wird verwendet. Für Befehle, die Nachrichtenlisten als Argumente benötigen, wird, falls keine Nachrichtenliste angegeben ist, die nächste Nachricht verwendet, die die Anforderungen des Befehls erfüllt. Wenn es keine Nachrichten vor der aktuellen Nachricht gibt, wird die Suche rückwärts durchgeführt, und wenn es keine geeigneten Nachrichten gibt, gibt Mail „Keine anwendbaren Nachrichten“ aus und bricht den Befehl ab.
- Gibt die vorherige Nachricht aus. Wenn ein numerisches Argument n angegeben wird, wird zur n-ten vorherigen Nachricht gesprungen und diese ausgegeben.
= Gibt die aktuell ausgewählte Nachrichten-Nummer aus.
? Gibt eine kurze Zusammenfassung der Befehle aus.
! Führt den Shell-Befehl aus (siehe sh(1) und csh(1)), der folgt.
alias (a) Ohne Argumente gibt es alle aktuell definierten Aliase aus. Mit einem Argument gibt es diesen Alias aus. Mit mehr als einem Argument wird ein neuer Alias erstellt oder ein alter geändert.
alternates
(alt) Der Befehl alternates ist nützlich, wenn Sie Konten auf mehreren Maschinen haben. Er kann verwendet werden, um Mail darüber zu informieren, dass die aufgelisteten Adressen tatsächlich zu Ihnen gehören. Wenn Sie auf Nachrichten antworten, sendet Mail keine Kopie der Nachricht an eine der Adressen in der Liste der alternativen Namen. Wenn der Befehl alternates ohne Argumente ausgeführt wird, wird die aktuelle Liste der alternativen Namen angezeigt.
chdir (cd oder ch) Ändert das Arbeitsverzeichnis des Benutzers auf das angegebene Verzeichnis, falls angegeben. Wenn kein Verzeichnis angegeben ist, wird das Arbeitsverzeichnis des Benutzers auf das Anmeldeverzeichnis geändert.
copy (c) Der Befehl copy macht das Gleiche wie save, markiert die verwendeten Nachrichten jedoch nicht zur Löschung, wenn Sie das Programm beenden.
delete (d) Nimmt eine Liste von Nachrichten als Argument und markiert sie alle zur Löschung. Gelöschte Nachrichten werden nicht in mbox gespeichert, noch stehen sie für die meisten anderen Befehle zur Verfügung.
dp (auch dt) Löscht die aktuelle Nachricht und gibt die nächste Nachricht aus. Wenn es keine nächste Nachricht gibt, gibt Mail die Meldung "Keine weiteren Nachrichten" aus.
edit (e) Nimmt eine Liste von Nachrichten und öffnet diese nacheinander im Texteditor. Nach der Rückkehr vom Editor wird die Nachricht erneut eingelesen.
exit (ex oder x) Führt eine sofortige Rückkehr zur Shell aus, ohne die System-Mailbox, die mbox-Datei oder die Bearbeitungsdatei in -f des Benutzers zu ändern.
file (fi) Das Gleiche wie folder.
folder (fo) Der Befehl folder wechselt zu einer neuen Maildatei oder einem neuen Ordner. Ohne Argumente wird angezeigt, welche Datei gerade gelesen wird. Wenn Sie ein Argument angeben, werden die vorgenommenen Änderungen (z. B. Löschungen) in der aktuellen Datei gespeichert und die neue Datei eingelesen. Für den Namen werden einige spezielle Konventionen erkannt: # bedeutet die vorherige Datei, % bedeutet Ihre System-Mailbox, %user bedeutet die System-Mailbox des Benutzers, & bedeutet Ihre mbox-Datei und +Ordner bedeutet eine Datei in Ihrem Ordnerverzeichnis.
folders
Listet die Namen der Ordner in Ihrem Ordnerverzeichnis auf.
from (f) Nimmt eine Liste von Nachrichten entgegen und gibt deren Nachrichtenüberschriften aus.
headers
(h) Listet die aktuellen Nachrichten im Fenster auf. Um die nächste oder vorherige Gruppe von Überschriften anzuzeigen, verwenden Sie den Befehl z.
help Ein Synonym für ?.
hold (ho, auch preserve) Nimmt eine Nachrichtenliste entgegen und kennzeichnet jede Nachricht darin, um sie in der System-Mailbox des Benutzers anstatt in mbox zu speichern. Überschreibt nicht den Befehl delete.
ignore Fügt die Liste der angegebenen Header-Felder der Ignorierliste hinzu. Header-Felder in der Ignorierliste werden nicht auf dem Terminal des Benutzers ausgegeben, wenn eine Nachricht ausgegeben wird. Dieser Befehl ist sehr nützlich, um bestimmte maschinengenerierte Header-Felder auszublenden. Die Befehle Type und Print können verwendet werden, um eine Nachricht in ihrer Gesamtheit auszugeben, einschließlich der ignorierten Felder. Wenn ignore ohne Argumente ausgeführt wird, wird die aktuelle Liste der ignorierten Felder angezeigt.
inc Nimmt alle neuen Nachrichten auf, die während der Nutzung des Programms eingegangen sind. Die neuen Nachrichten werden am Ende der Nachrichtenliste hinzugefügt, und die aktuelle Nachricht wird auf die erste neue Nachricht zurückgesetzt. Dies nummeriert die vorhandene Nachrichtenliste nicht neu und führt auch keine Änderungen durch, die bisher vorgenommen wurden.
list (l) Listet die gültigen Mail-Befehle auf.
mail (m) Nimmt als Argument Login-Namen und Namen von Verteilergruppen entgegen und sendet Mail an diese Personen.
mbox Gibt an, dass eine Liste von Nachrichten in die mbox-Datei im Home-Verzeichnis des Benutzers gespeichert werden soll, wenn das Programm beendet wird. Dies ist die Standardaktion für Nachrichten, wenn die Option hold nicht gesetzt ist.
more (mo) Nimmt eine Nachrichtenliste entgegen und ruft den Pager für diese Liste auf.
next (n) (wie + oder CR) Geht zur nächsten Nachricht in der Reihenfolge und zeigt sie an. Mit einer Argumentliste zeigt es die nächste übereinstimmende Nachricht an.
preserve
Ein Synonym für hold.
Print (P) Wie print, gibt aber auch die ignorierten Header-Felder aus. Siehe auch print, ignore und retain.
print (p) Nimmt eine Nachrichtenliste entgegen und gibt jede Nachricht auf dem Terminal des Benutzers aus.
quit (q) Beendet die Sitzung, speichert alle nicht gelöschten, nicht gespeicherten Nachrichten in der mbox-Datei im Login-Verzeichnis des Benutzers, speichert alle mit hold oder preserve markierten Nachrichten oder alle Nachrichten, die noch nicht in der System-Mailbox des Benutzers referenziert wurden, und entfernt alle anderen Nachrichten aus der System-Mailbox des Benutzers. Wenn während der Sitzung neue Nachrichten eingegangen sind, wird die Meldung „Sie haben neue Mail“ ausgegeben. Wenn dies beim Bearbeiten einer Mailbox-Datei mit der -f-Option erfolgt, wird die Bearbeitungsdatei neu geschrieben. Es erfolgt eine Rückkehr zur Shell, es sei denn, das Neuschreiben der Bearbeitungsdatei schlägt fehl, in diesem Fall kann der Benutzer mit dem Befehl exit das Programm verlassen.
Reply (R) Antwortet an den Absender. Antwortet nicht an andere Empfänger der ursprünglichen Nachricht.
reply (r) Nimmt eine Nachrichtenliste entgegen und sendet Mail an den Absender und alle Empfänger der angegebenen Nachricht. Die Standardnachricht darf nicht gelöscht werden.
respond
Ein Synonym für reply.
retain Fügt die Liste der angegebenen Header-Felder der Beibehaltungsliste hinzu. Nur die Header-Felder in der Beibehaltungsliste werden auf dem Terminal des Benutzers ausgegeben, wenn eine Nachricht ausgegeben wird. Alle anderen Header-Felder werden unterdrückt. Die Befehle Type und Print können verwendet werden, um eine Nachricht in ihrer Gesamtheit auszugeben. Wenn retain ohne Argumente ausgeführt wird, wird die aktuelle Liste der beibehaltenen Felder angezeigt.
save (s) Nimmt eine Nachrichtenliste und einen Dateinamen und hängt jede Nachricht nacheinander an das Ende der Datei an. Der Dateiname in Anführungszeichen, gefolgt von der Zeilenzahl und der Anzahl der Zeichen, wird im Terminal des Benutzers ausgegeben.
saveignore
saveignore ist so, wie ignore für print und type ist. Header-Felder, die so gekennzeichnet sind, werden herausgefiltert, wenn eine Nachricht mit save gespeichert oder automatisch in mbox gespeichert wird.
saveretain
saveretain ist so, wie retain für print und type ist. Header-Felder, die so gekennzeichnet sind, sind die einzigen, die beim Speichern einer Nachricht mit save oder beim automatischen Speichern in mbox gespeichert werden. saveretain hat Vorrang vor saveignore.
set (se) Ohne Argumente werden alle Variablenwerte ausgegeben. Andernfalls wird eine Option gesetzt. Argumente haben die Form option=wert (kein Leerzeichen vor oder nach =) oder option. Anführungszeichen können um jeden Teil der Zuweisungsanweisung herum gesetzt werden, um Leerzeichen oder Tabulatoren zu kennzeichnen, z. B. set indentprefix="->".
shell (sh) Ruft eine interaktive Version der Shell auf.
size Nimmt eine Nachrichtenliste entgegen und gibt die Größe jeder Nachricht in Zeichen aus.
source Der Befehl source liest Befehle aus einer Datei.
top Nimmt eine Nachrichtenliste entgegen und gibt die ersten paar Zeilen jeder Nachricht aus. Die Anzahl der ausgegebenen Zeilen wird durch die Variable toplines gesteuert und standardmäßig auf fünf gesetzt.
Type (T) Identisch mit dem Befehl Print.
type (t) Ein Synonym für print.
unalias
Nimmt eine Liste von Namen entgegen, die durch Alias-Befehle definiert wurden, und verwirft die gemerkten Gruppen von Benutzern. Die Gruppennamen haben keine Bedeutung mehr.
undelete
(u) Nimmt eine Nachrichtenliste entgegen und markiert jede Nachricht als nicht gelöscht.
unread (U) Nimmt eine Nachrichtenliste entgegen und markiert jede Nachricht als nicht gelesen.
unset Nimmt eine Liste von Optionsnamen entgegen und verwirft deren gemerkten Werte; das Gegenteil von set.
visual (v) Nimmt eine Nachrichtenliste entgegen und ruft den Anzeigeeditor für jede Nachricht auf.
write (w) Ähnlich wie save, außer dass nur der Nachrichtentext (ohne den Header) gespeichert wird. Sehr nützlich für Aufgaben wie das Senden und Empfangen von Quellcode über das Nachrichtensystem.
xit (x) Ein Synonym für exit.
z mail zeigt Nachrichtenheader in Fensteransichten an, wie unter dem Befehl headers beschrieben. Sie können die Aufmerksamkeit von mail zum nächsten Fenster bewegen, indem Sie den Befehl z verwenden. Sie können auch zum vorherigen Fenster wechseln, indem Sie z- verwenden.
Tilde/Escape-Sequenzen
Hier ist eine Zusammenfassung der Tilde-Escape-Sequenzen, die beim Verfassen von Nachrichten verwendet werden, um spezielle Funktionen auszuführen. Tilde-Escape-Sequenzen werden nur am Anfang von Zeilen erkannt. Der Name „Tilde-Escape-Sequenz“ ist etwas irreführend, da das tatsächliche Escape-Zeichen durch die Option escape festgelegt werden kann.
~bname ...
Fügt die angegebenen Namen zur Liste der Empfänger für eine Blindkopie hinzu, wobei die Namen nicht in der Cc:-Zeile angezeigt werden ("blinde" Kohlenkopie).
~cname ...
Fügt die angegebenen Namen zur Liste der Empfänger für eine Kohlenkopie hinzu.
~d Liest die Datei dead.letter aus Ihrem Heimatverzeichnis in die Nachricht ein.
~e Ruft den Texteditor für die bisher gesammelte Nachricht auf. Nach dem Ende der Bearbeitungssitzung können Sie weiterhin Text an die Nachricht anhängen.
~Fmessages
Identisch mit \~f, jedoch werden alle Nachrichten-Header einbezogen.
~fmessages
Liest die angegebenen Nachrichten in die zu sendende Nachricht ein. Wenn keine Nachrichten angegeben sind, wird die aktuelle Nachricht eingelesen. Nachrichten-Header, die derzeit durch die Befehle "ignore" oder "retain" ignoriert werden, werden nicht einbezogen.
~h Bearbeitet die Nachrichten-Header-Felder, indem jedes Feld einzeln eingegeben wird, und ermöglicht dem Benutzer, am Ende Text anzuhängen oder das Feld mit den aktuellen Lösch- und Kill-Zeichen des Terminals zu ändern.
~Mmessages
Identisch mit \~m, jedoch werden alle Nachrichten-Header einbezogen.
~mmessages
Liest die angegebenen Nachrichten in die zu sendende Nachricht ein, wobei ein Tab oder der Wert von "indentprefix" als Einrückung verwendet wird. Wenn keine Nachrichten angegeben sind, wird die aktuelle Nachricht eingelesen. Nachrichten-Header, die derzeit durch die Befehle "ignore" oder "retain" ignoriert werden, werden nicht einbezogen.
~p Gibt die bisher gesammelte Nachricht mit den Nachrichten-Header-Feldern als Präfix aus.
~q Bricht die zu sendende Nachricht ab und kopiert die Nachricht in die Datei dead.letter in Ihrem Heimatverzeichnis, wenn die Option "save" gesetzt ist.
~Rstring
Verwendet die Zeichenkette als Feld "Antwort an".
~rfilename
~<filename
Liest die angegebene Datei in die Nachricht ein.
~sstring
Verursacht, dass die angegebene Zeichenkette zum aktuellen Feld "Betreff" wird.
~tname ...
Fügt die angegebenen Namen zur Liste der direkten Empfänger hinzu.
~v Ruft einen alternativen Editor (definiert durch die Option "VISUAL") für die bisher gesammelte Nachricht auf. In der Regel ist der alternative Editor ein Bildschirmeditor. Nachdem Sie den Editor beendet haben, können Sie mit dem Anhängen von Text am Ende Ihrer Nachricht fortfahren.
~wfilename
Schreibt die Nachricht in die angegebene Datei.
~x Bricht die zu sendende Nachricht ab. Es wird keine Nachricht in ~/dead.letter kopiert, selbst wenn die Option "save" gesetzt ist.
~? Gibt eine kurze Zusammenfassung der Tilde-Escapes aus.
~!command
Führt den angegebenen Shell-Befehl aus und kehrt dann zur Nachricht zurück.
~|command
Leitet die Nachricht als Filter durch den Befehl. Wenn der Befehl keine Ausgabe liefert oder abnormal beendet wird, wird der ursprüngliche Text der Nachricht beibehalten. Der Befehl fmt(1) wird häufig als Befehl verwendet, um die Nachricht neu zu formatieren.
~:mail-command
~_mail-command
Führt den angegebenen Mail-Befehl aus. Nicht alle Befehle sind jedoch zulässig.
~~string
Fügt die Textzeichenkette in die Nachricht ein, wobei diese mit einem einzelnen \~ versehen wird. Wenn Sie das Escape-Zeichen geändert haben, sollten Sie dieses Zeichen verdoppeln, um es zu senden.
~. Simuliert das Dateiende bei der Eingabe.
Mail-Optionen
Eine Reihe von Optionen können in der Datei .mailrc festgelegt werden, um das Verhalten von Mail zu ändern. Dies geschieht über die Befehle "set" und "unset". Optionen können entweder binär sein, in diesem Fall ist es nur wichtig, ob sie gesetzt sind oder nicht; oder sie können Zeichenketten sein, in diesem Fall ist der tatsächliche Wert von Interesse.
Die binären Optionen umfassen die folgenden:
append Bewirkt, dass in mbox gespeicherte Nachrichten am Ende hinzugefügt werden, anstatt an den Anfang.
Dies sollte immer gesetzt sein (möglicherweise in /etc/mail.rc).
ask, asksub
Veranlasst, dass mail Sie auffordert, das Thema für jede gesendete Nachricht anzugeben. Wenn Sie einfach mit einer neuen Zeile antworten, wird kein Betreff-Feld gesendet.
askbcc Veranlasst, dass Sie am Ende jeder Nachricht aufgefordert werden, zusätzliche blinde Kopie-Empfänger anzugeben. Eine Antwort mit einer neuen Zeile zeigt an, dass Sie mit der aktuellen Liste zufrieden sind.
askcc Veranlasst, dass Sie am Ende jeder Nachricht aufgefordert werden, zusätzliche Kopie-Empfänger anzugeben. Eine Antwort mit einer neuen Zeile zeigt an, dass Sie mit der aktuellen Liste zufrieden sind.
autoinc
Bewirkt, dass neue E-Mails automatisch einbezogen werden, wenn sie ankommen. Das Setzen dieser Option ist ähnlich wie das Ausführen des Befehls inc bei jeder Eingabeaufforderung, mit dem Unterschied, dass die aktuelle Nachricht nicht zurückgesetzt wird, wenn neue E-Mails ankommen.
autoprint
Bewirkt, dass sich der Befehl delete wie dp verhält; daher wird nach dem Löschen einer Nachricht die nächste automatisch angezeigt.
debug Das Setzen der binären Option debug entspricht der Angabe von -d auf der Befehlszeile und bewirkt, dass mail alle möglichen Informationen ausgibt, die zum Debuggen von mail nützlich sind.
dot Die binäre Option dot bewirkt, dass mail eine einzelne, alleinstehende Punkt am Ende einer Zeile als das Ende einer Nachricht interpretiert, die Sie senden.
expandaddr
Bewirkt, dass mail die Adressen der Nachrichtsempfänger erweitert, wie im Abschnitt „Spezifikationen der Empfängeradressen“ erläutert.
from Bewirkt, dass mail die angegebene Absenderadresse im Feld „Von:“ des Nachrichtenkopfes verwendet. Eine abgespeckte Version der Adresse wird auch in der Nachrichten-Hülle verwendet. Wenn diese Option nicht gesetzt ist, enthält die Nachricht keine explizite Absenderadresse, und ein Standardwert wird vom MTA hinzugefügt, typischerweise „user@host“. Dieser Wert kann durch die Angabe des Flags -r auf der Befehlszeile überschrieben werden.
hold Diese Option wird verwendet, um Nachrichten standardmäßig in der System-Mailbox zu speichern.
ignore Bewirkt, dass Interrupt-Signale von Ihrem Terminal ignoriert und als @-Zeichen ausgegeben werden.
ignoreeof
Eine Option, die mit dot zusammenhängt, ist ignoreeof, die bewirkt, dass mail keine Strg+D als das Ende einer Nachricht akzeptiert. ignoreeof gilt auch für den Befehlsmodus von mail.
keep Durch das Setzen dieser Option wird die System-Mailbox abgeschnitten, anstatt sie zu löschen, wenn sie leer ist.
keepsave Nachrichten, die mit dem Befehl save gespeichert wurden, werden normalerweise nicht beim Beenden in mbox gespeichert. Verwenden Sie diese Option, um diese Nachrichten beizubehalten.
metoo Normalerweise wird, wenn eine Gruppe erweitert wird, die den Absender enthält, der Absender aus der Erweiterung entfernt. Durch das Setzen dieser Option wird bewirkt, dass der Absender in die Gruppe einbezogen wird.
noheader
Das Setzen der Option noheader entspricht der Verwendung des Flags -N auf der Befehlszeile.
nosave Normalerweise speichert `mail` bei der Abbruch einer Nachricht mit zwei Interrupt-Zeichen (normalerweise Strg+C) die unvollständige Nachricht in der Datei `dead.letter` in Ihrem Home-Verzeichnis. Durch das Setzen der binären Option `nosave` wird dies verhindert.
quiet Unterdrückt die Ausgabe der Version, wenn das Programm zum ersten Mal aufgerufen wird.
Replyall
Kehrt die Bedeutung der Befehle reply und Reply um.
searchheaders
Wenn diese Option gesetzt ist, wird ein Nachrichtenlisten-Spezifizierer in der Form /x:y zu allen Nachrichten erweitert, die die Teilzeichenkette y im Header-Feld x enthalten. Die Zeichenketten-Suche ist nicht zwischen Groß- und Kleinschreibung unterscheidend. Wenn x weggelassen wird, wird standardmäßig das Header-Feld Subject verwendet. Die Form /to:y ist ein Sonderfall und wird zu allen Nachrichten erweitert, die die Teilzeichenkette y in den Header-Feldern To, Cc oder Bcc enthalten. Die Überprüfung auf to ist zwischen Groß- und Kleinschreibung unterscheidend, sodass /To:y verwendet werden kann, um die Suche nach y auf das Feld To: zu beschränken.
skipempty
Sendet keine Nachrichten mit einem leeren Textkörper.
verbose
Das Setzen der Option verbose entspricht der Verwendung des Flags -v in der Befehlszeile. Wenn mail im ausführlichen Modus ausgeführt wird, wird die tatsächliche Zustellung der Nachrichten auf dem Terminal des Benutzers angezeigt.
Zeichenkettenwerte für Optionen
EDITOR Pfad zum Texteditor, der in dem Befehl `edit` und der Escape-Sequenz `~e` verwendet wird. Wenn dies nicht definiert ist, wird `/usr/bin/ex` verwendet.
LISTER Pfad zum Verzeichnis-Lister, der in dem Befehl `folders` verwendet wird. Standardmäßig ist dies `/bin/ls`.
MBOX Der Name der MBOX-Datei. Dies kann der Name eines Ordners sein. Standardmäßig ist dies `mbox` im Home-Verzeichnis des Benutzers.
PAGER Pfad zum Programm, das in dem Befehl `more` oder wenn die Variable `crt` gesetzt ist, verwendet wird. Wenn diese Option nicht definiert ist, wird standardmäßig der Paginator `more(1)` verwendet.
REPLYTO Wenn dies gesetzt ist, wird dies verwendet, um das Feld `Reply-To` für ausgehende Nachrichten zu initialisieren.
SHELL Pfad zur Shell, die in dem Befehl `!` und der Escape-Sequenz `~!` verwendet wird. Wenn dies nicht definiert ist, wird eine Standardshell verwendet.
VISUAL Pfad zum Texteditor, der in dem Befehl `visual` und der Escape-Sequenz `~v` verwendet wird. Wenn dies nicht definiert ist, wird `/usr/bin/vi` verwendet.
crt Die Wert-Option `crt` wird als Schwellenwert verwendet, um zu bestimmen, wie lang eine Nachricht sein muss, bevor `PAGER` verwendet wird, um sie anzuzeigen. Wenn `crt` ohne Wert gesetzt ist, wird die Höhe des Terminals, die im System gespeichert ist, verwendet, um den Schwellenwert zu berechnen (siehe `stty(1)`).
escape Wenn definiert, gibt das erste Zeichen dieser Option das Zeichen an, das anstelle von `~` für Escape-Sequenzen verwendet werden soll.
folder Der Name des Verzeichnisses, das zum Speichern von Nachrichtenordnern verwendet wird. Wenn dieser Name mit einem `/` beginnt, betrachtet `mail` ihn als absoluten Pfad; andernfalls wird das Ordnerverzeichnis relativ zu Ihrem Home-Verzeichnis gefunden.
indentprefix Zeichenkette, die von der Tilde-Escape-Sequenz `~m` zum Einrücken von Nachrichten verwendet wird, anstelle des normalen Tabulatorzeichens (`^I`). Stellen Sie sicher, dass Sie den Wert in Anführungszeichen setzen, wenn er Leerzeichen oder Tabulatoren enthält.
record Wenn definiert, gibt dies den Pfad der Datei an, in der alle ausgehenden E-Mails gespeichert werden. Wenn nicht definiert, werden ausgehende E-Mails nicht gespeichert.
screen Größe des Fensters für die Anzeige von Nachrichtenüberschriften für z.
sendmail Pfad zu einem alternativen E-Mail-Zustellungssystem.
toplines Wenn definiert, gibt dies die Anzahl der Zeilen einer Nachricht an, die mit dem Befehl `top` ausgegeben werden sollen; normalerweise werden die ersten fünf Zeilen ausgegeben.
UMGEBUNG
mail verwendet die Umgebungsvariablen HOME, LOGNAME, USER, SHELL, DEAD, PAGER, LISTER, EDITOR, VISUAL, REPLYTO, MAIL, MAILRC und MBOX.
Wenn die Umgebungsvariable MAIL gesetzt ist, wird ihr Wert als Pfad zum E-Mail-Spool des Benutzers verwendet.
DATEIEN
/var/mail/* Postfach (es sei denn, dies wird durch die Umgebungsvariable MAIL überschrieben)
~/mbox E-Mails des Benutzers
~/.mailrc Datei, die anfängliche Mail-Befehle enthält; kann durch Setzen der Umgebungsvariable MAILRC überschrieben werden
/tmp/R* temporäre Dateien
/usr/share/bsd-mailx/mail.*help Hilfedateien
/etc/mail.rc systemweite Initialisierungsdatei
RÜCKGABEWERTE
Das Dienstprogramm mail gibt 0 bei Erfolg und >0 bei einem Fehler zurück.
SIEHE AUCH
fmt(1), newaliases(1), vacation(1), aliases(5), mail.local(8), newaliases(8), sendmail(8), smtpd(8)
Kurt Shoens, „Mail Reference Manual“, 4.4BSD User's Supplementary Documents (USD).
STANDARDS
Das Dienstprogramm mailx entspricht der IEEE Std 1003.1-2008 („POSIX.1“)-Spezifikation.
Die Flags [-iNnu] sind in IEEE Std 1003.1-2008 („POSIX.1“) als optional gekennzeichnet.
Die Flags [-eFH] sind in IEEE Std 1003.1-2008 („POSIX.1“) als optional gekennzeichnet und werden von dieser Implementierung von mailx nicht unterstützt.
Die Flags [-abcdEIrv] sind Erweiterungen der Spezifikation.
HISTORIE
Ein Mail-Befehl erschien in Version 1 AT&T UNIX. Diese Manpage basiert auf dem Mail Reference Manual, das ursprünglich von Kurt Shoens verfasst wurde.
FEHLER
Normalerweise sind Mail und mailx nur Symlinks zu mail, was verwirrend sein kann.