1 つのメッセージで複数のメール結果を自分のメールに送信する方法

1 つのメッセージで複数のメール結果を自分のメールに送信する方法

電子メールの結果をメッセージとして私の電子メールに送信したいと思います。何をすべきか教えていただけますか?以下は私のスクリプトのコピーです。 3つのEメールアイテムをすべて1つのメッセージに含める必要があります。私たちがこれを行う方法はありますか?

if ((($4) < 3000 ))
then
    echo "Memory Utilization is less than 5% free of Total Memory" | mail [email protected] # first email
    free -m | mail [email protected] # second email
    ps -eo pid,ppid,rss,vsize,pcpu,pmem,cmd -ww --sort=vsz|cut -c1-130|tac|head | mail -s "Please bounce high consuming jobs on server "  [email protected] # third email
else 
    exit 0

fi

ベストアンサー1

サブシェルを使用して、3つのコマンドをすべて実行し、出力を一度にパイプすることができます。

if ((($4) < 3000 ))
then
    (
    echo "Memory Utilization is less than 5% free of Total Memory"
    free -m
    ps -eo pid,ppid,rss,vsize,pcpu,pmem,cmd -ww --sort=vsz|cut -c1-130|tac|head
    ) | mail -s "Please bounce high consuming jobs on server" [email protected]
else
    exit 0
fi

おすすめ記事