Frage

Ich habe ein Skript, das Adresse und sendet eine E-Mail, aber ich brauche einen Körper in der Meldung ohne das Erstellen eine Datei und dann mit der Standard-MAIL Kommandozeile die Datei eingefügt wird.

Wie kann ich das tun?

War es hilfreich?

Lösung

der Körper Sie wollen Unter der Annahme, etwas zu schaffen, ist Sie SYS $ OUTPUT schreiben kannst (zB die Ausgabe einer Befehlsprozedur oder DCL-Befehl), dann können Sie DCL Rohr zu Rohr verwenden, um die Ausgabe in VMS Post, wie:

$ PIPE write sys$output "The date is ", f$cvtime() | MAIL SYS$INPUT smith/SUBJ="Piping in DCL"

oder

$ PIPE DIR *.LOG | MAIL SYS$INPUT smith/SUBJ="Piping in DCL"

Der PIPE-Befehl wurde in OpenVMS V7.1 hinzugefügt. Wenn Sie irgendwie auf einem Pre-7.1-System, dann die einzige Wahl in eine temporäre Datei schreibt und Reinigung.

Edit:

: Kommentar beantworten, wenn Sie die interaktive Displays aus dem Mail-Befehl beseitigen möchten, können Sie SYS $ OUTPUT zu NLA0 :, wie in umleiten
$ PIPE DIR *.LOG |  MAIL SYS$INPUT smith/SUBJ="Piping in DCL" > NLA0:

Fehlermeldungen gehen an SYS $ ERROR, so dass Sie immer noch alle Fehler sehen. Siehe HELP PIPE für mehr Güte.

Andere Tipps

Haben Sie das Skript eine temporäre Datei erstellen Sie den Text der Nachricht zu halten.

E-Mail wird eine Textdatei auf der Kommandozeile, wie die Liste der Benutzer und die / subj

akzeptieren
Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top