Tuyau de la sortie de trois echo déclaration mail
echo "Total items: `echo $QUERY1 | awk '{print $1}'`"
echo "Total Error: `echo $QUERY1 | awk '{print $2}'`"
echo "Percentage: $QUERY2"
Comment puis-je envoyer ces trois choses dans un seul e-mail à l'aide de mail command
. De sorte que le corps du mail doit être comme ci-dessous à chaque fois que je reçois un e-mail, dans chaque ligne, il devrait y avoir un écho de l'instruction
Total items:- Some Number
Total Error:- Some Number
Percentage:- Some Number
Je suis en cours d'exécution SunOS
bash-3.00$ uname -a
SunOS lvsaishdc3in0001 5.10 Generic_142901-02 i86pc i386 i86pc
Pouvez-vous ne pas le diriger vers un fichier tmp et tout tuyau qui?
tous ces écho des déclarations sont là, dans mon script shell et à partir de ce script shell seulement j'ai besoin de passer ces trois echo consolidés en un seul e-mail.
double possible de Envoyer un email à un groupe email à l'aide d'un script shell
tous ces écho des déclarations sont là, dans mon script shell et à partir de ce script shell seulement j'ai besoin de passer ces trois echo consolidés en un seul e-mail.
double possible de Envoyer un email à un groupe email à l'aide d'un script shell
OriginalL'auteur AKIWEB | 2012-08-09
Vous devez vous connecter pour publier un commentaire.
Votre condition n'est pas complètement clair, mais essayez ceci
La
{ .. }
paire crée un groupe de processus, et de toutes les mst-la sortie est redirigée vers les 1|
(pipe), qui se connecte à la std-in de votre programme de messagerie.Vous pouvez avoir besoin d'utiliser
mailx
,-s
spécifie l'objet, que je vois à partir de votre autre question sur ce sujet que vous semblez comprendre.Aussi
sendmail
doit être en marche et correctement configuré pour tout courrier sera distribué à partir de la machine que vous exécutez ce script.IHTH
Edit: 2015-11-07
Viens de recevoir une "bonne réponse" star de ce, et sur l'examen, je suis surpris que je n'ai pas de commentaires sur l'utilisation excessive de processus. Pour ce cas, cela peut être réduite à un appel à
awk
, c'est à direOu pour le one-liner foule ;-), c'est-à
La
{ .. }
ne sont pas nécessaires dans ce cas, comme il n'y a qu'un seul processus de raccordement à la canalisation.Pour un cas comme celui d'un rapport de synthèse envoyé une fois par jour, le code d'origine est complètement utilisable (mais non optimale). Cependant, le codage non-optimale conduit à de mauvaises habitudes. L'appel de 5 processus quand on va suffire dans une boucle qui s'exécute 1000s de fois dans une journée, va consommer des ressources de calcul inutilement.
Enfin, comme l'o.p. ne comprend pas les données de l'échantillon, le code est seulement légèrement testé.
OriginalL'auteur shellter
Il suffit de créer une fonction dans bash et | (pipe) à sendmail.
OriginalL'auteur Brian Carpio