Linux コマンドラインでメールを送信する 5 つの方法 (推奨)

Linux コマンドラインでメールを送信する 5 つの方法 (推奨)

シェル スクリプトで電子メールを作成する必要がある場合は、コマンド ラインから電子メールを送信する知識を使用する必要があります。 Linux には電子メールを送信できるコマンドが多数あります。このチュートリアルでは、最も人気のある 5 つのコマンドライン メール クライアントについて説明します。そのうちの 1 つを選択できます。 5 つのコマンドは次のとおりです。

  • メール / mailx
  • 雑種
  • mパック
  • 送信メール
  • SMTP

仕組み

まず、Linux の mail コマンドが電子メールを受信者に配信する仕組みを大まかに説明します。 mail コマンドはメールを作成し、それをローカルのメール転送エージェント (sendmail、Postfix などの MTA) に送信します。メール サーバーはリモート メール サーバーと通信して、実際にメールを送受信します。以下のプロセスをより詳しく見ることができます。

1) Linuxにmail/mailxコマンドをインストールする方法

mail コマンドは、Linux ターミナルで電子メールを送信するために最もよく使用されるコマンドです。 mailx は、Berkeley Mail 8.1 に基づく mail コマンドの更新バージョンであり、POSIX mailx コマンドの機能を提供することを目的としており、MIME、IMAP、POP3、SMTP、および S/MIME 拡張機能をサポートしています。 mailx は、メール メッセージのバッファリング、スパムのスコアリングとフィルタリングなど、いくつかの対話型機能においてより強力です。 Linux ディストリビューションでは、mail コマンドは mailx コマンドへのソフト リンクです。次のコマンドを実行すると、公式ディストリビューションリポジトリから mail コマンドをインストールできます。

Debian/Ubuntu システムの場合は、APT-GET コマンドまたは APT コマンドを使用して mailutils をインストールします。

$ sudo apt-get install mailutils

RHEL/CentOS システムの場合は、YUM コマンドを使用して mailx をインストールします。

$ sudo yum install mailx

Fedora システムの場合は、DNF コマンドを使用して mailx をインストールします。

$ sudo dnf install mailx

1a) Linuxでメールコマンドを使用してメールを送信する方法

メールコマンドはシンプルで使いやすいです。添付ファイルを送信する必要がない場合は、次のメール コマンド形式を使用して電子メールを送信できます。

$ echo "これはメール本文です" | mail -s "件名" [email protected]

添付ファイルを送信する場合は、次のメール コマンド形式を使用します。

$ echo "これはメール本文です" | mail -a test1.txt -s "件名" [email protected]

-a: Red Hat ベースのシステムにアドオンを追加するために使用されます。
-A: Debian ベースのシステムで添付ファイルを追加するために使用されます。
-s: メッセージのタイトルを指定します。

2) Linuxにmuttコマンドをインストールする方法

mutt は、Linux ターミナルから電子メールを送信するためのもう 1 つの一般的なコマンドです。 mutt は、Unix オペレーティング システムで電子メールの読み取りと送信を行うための、小型ながら強力なテキストベースのプログラムです。カラー端末、MIME、OpenPGP、メール スレッド ソート モードをサポートしています。次のコマンドを実行すると、公式ディストリビューション リポジトリから mutt コマンドをインストールできます。

Debian/Ubuntu システムの場合は、APT-GET コマンドまたは APT コマンドを使用して mutt をインストールします。

$ sudo apt-get install mutt

RHEL/CentOS システムの場合は、YUM コマンドを使用して mutt をインストールします。

$ sudo yum install mutt

Fedora システムの場合は、DNF コマンドを使用して mutt をインストールします。

$ sudo dnf install mutt

2b) Linuxでmuttコマンドを使用してメールを送信する方法

使い方はmuttと同じくらい簡単です。添付ファイルを送信する必要がない場合は、次の mutt コマンド形式を使用して電子メールを送信できます。

$ echo "これはメール本文です" | mutt -s "件名" [email protected]

添付ファイルを送信する場合は、次の mutt コマンド形式を使用します。

$ echo "これはメール本文です" | mutt -s "件名" [email protected] -a test1.txt

3) Linuxにmpackコマンドをインストールする方法

mpack は、Linux ターミナルから電子メールを送信するためのもう 1 つの一般的なコマンドです。 mpack プログラムは、指定されたファイルを 1 つ以上の MIME メッセージにエンコードします。エンコードされたメッセージは 1 人以上の受信者に送信されます。次のコマンドを実行すると、公式ディストリビューションリポジトリから mpack コマンドをインストールできます。

Debian/Ubuntu システムの場合は、APT-GET コマンドまたは APT コマンドを使用して mpack をインストールします。

$ sudo apt-get mpackをインストール

RHEL/CentOS システムの場合は、YUM コマンドを使用して mpack をインストールします。

$ sudo yum install mpack

Fedora システムの場合は、DNF コマンドを使用して mpack をインストールします。

$ sudo dnf install mpack

3a) Linuxでmpackコマンドを使用してメールを送信する方法

mpack もシンプルで使いやすいです。添付ファイルを送信する必要がない場合は、次の mpack コマンド形式を使用して電子メールを送信できます。

$ echo "これはメール本文です" | mpack -s "件名" [email protected]

添付ファイルを送信する場合は、次の mpack コマンド形式を使用します。

$ echo "これはメール本文です" | mpack -s "件名" [email protected] -a test1.txt

4) Linuxにsendmailコマンドをインストールする方法

sendmail は、インターネットで広く使用されている汎用 SMTP サーバーです。また、sendmail を使用して、コマンド ラインから電子メールを送信することもできます。次のコマンドを実行すると、公式ディストリビューション リポジトリから sendmail コマンドをインストールできます。

Debian/Ubuntu システムの場合は、APT-GET コマンドまたは APT コマンドを使用して sendmail をインストールします。

$ sudo apt-get install sendmail

RHEL/CentOS システムの場合は、YUM コマンドを使用して sendmail をインストールします。

$ sudo yum install sendmail

Fedora システムの場合は、DNF コマンドを使用して sendmail をインストールします。

$ sudo dnf install sendmail

4a) Linuxでsendmailコマンドを使用してメールを送信する方法

sendmail もシンプルで使いやすいです。以下の sendmail コマンドを使用してメールを送信します。

$ echo -e "件名: テストメール\nこれはメール本文です" > /tmp/send-mail.txt
$ sendmail [email protected] < send-mail.txt

5) Linuxにssmtpコマンドをインストールする方法

ssmtp は sendmail に似たツールで、メールの送信のみを行い、受信は行いません。ローカル コンピューターから設定されたメール ホスト (メールハブ) にメールを転送できます。ユーザーは Linux コマンドラインで ssmtp を使用して、SMTP サーバーに電子メールを送信できます。次のコマンドを実行すると、公式ディストリビューション リポジトリから ssmtp コマンドをインストールできます。

Debian/Ubuntu システムの場合は、APT-GET コマンドまたは APT コマンドを使用して ssmtp をインストールします。

$ sudo apt-get install ssmtp

RHEL/CentOS システムの場合は、YUM コマンドを使用して ssmtp をインストールします。

$ sudo yum install ssmtp

Fedora システムの場合は、DNF コマンドを使用して ssmtp をインストールします。

$ sudo dnf install ssmtp

5a) Linuxでssmtpコマンドを使用してメールを送信する方法

ssmtp もシンプルで使いやすいです。電子メールを送信するには、次の ssmtp コマンド形式を使用します。

$ echo -e "件名: テストメール\nこれはメール本文です" > /tmp/ssmtp-mail.txt
$ ssmtp [email protected] < /tmp/ssmtp-mail.txt

要約する

上記は、編集者が紹介した Linux コマンドラインでメールを送信する 5 つの方法です。皆様のお役に立てれば幸いです。ご質問がある場合は、メッセージを残してください。編集者がすぐに返信します。また、123WORDPRESS.COM ウェブサイトをサポートしてくださっている皆様にも感謝申し上げます。
この記事が役に立ったと思われた方は、ぜひ転載していただき、出典を明記してください。ありがとうございます!

以下もご興味があるかもしれません:
  • Python 経由で Linux コマンドラインコード例に接続する
  • Linux コマンドラインのクイックヒント: ファイルの検索方法
  • Linux コマンドラインでパケットをキャプチャするために tcpdump を使用するいくつかの機能
  • Linux コマンドラインターミナルで画面を分割するための 2 つのツール
  • Linux のコマンドラインから Android アプリケーションをパッケージ化する方法
  • Linux で IP、DNS、ルーティングのコマンドライン設定を変更する方法
  • Linux コマンドラインで他のユーザーと通信する方法

<<:  Ant Design Blazor コンポーネントライブラリのルーティング再利用マルチタブ機能

>>:  初心者向けMySQLインデックス

推薦する

Maven プロジェクトのリモート デプロイメント && Tomcat を使用してデータベース接続を構成する方法

1つ。 tomcat を使用したリモート展開1.1 発生した問題:プロジェクトでは、サードパーティの...

js QRコードスキャンログインの原理についての簡単な説明

目次QRコードログインの真髄QRコードを理解するシステム認証メカニズムQRコードをスキャンしてログイ...

Mysql と Oracle でよく使用される複数テーブルの変更ステートメントの概要

今日、SQLトレーニングの質問バンクでこの質問を見ました。これは、非常に代表的なマルチテーブル変更の...

CSS3 で QR コードスキャン効果を実装する例

オンラインプレビューhttps://jsrun.pro/AafKp/まず効果を見てみましょう:最初の...

JavaScriptはキュー構造プロセスを実現する

目次1. キューを理解する2. カプセル化キュー3. 太鼓をたたいて花を渡す場合1. キューを理解す...

Linux で Docker を使用して MySQL をインストールする手順

テスターとして、学習プロセス中に Linux でソフトウェアをインストールする必要が頻繁にある場合が...

MySQL ログインおよび終了コマンドの形式

mysql ログインのコマンド形式は次のとおりです。 mysql -h [hostip] -u [ユ...

MySQLクエリ構文の概要

序文:この記事では主に、MySQL の where、group by、order by、limit、...

Linux jdk のインストールと環境変数の設定チュートリアル (jdk-8u144-linux-x64.tar.gz)

最初にsudo suコマンドを使用して root アカウントに切り替えることをお勧めします。そうしな...

CentOS7にsshをインストールして設定する

1. openssh-serverをインストールする yum インストール -y openssl o...

VMware Esxi のルート パスワードを忘れた後に正常に取得する方法

CentOS6 インストール ディスク (任意のバージョン) を準備するか、別の pnux インスト...

MySQLにおけるSQLの実行順序についてのちょっとした質問

今日、仕事中に左結合に関するSQLの問題に遭遇しました。後で解決しましたが、この問題を通じてSQLの...

ウェブページのメモリ使用量とCPU使用量を削減する方法

一部の Web ページは大きく見えなくても開くのに非常に時間がかかる場合があります。一方、他の We...

MySQL 8.x msi バージョンのインストール チュートリアル (画像とテキスト付き)

1. MySQLをダウンロードする公式サイトのダウンロードアドレス https://dev.mys...

Vue2.0/3.0双方向データバインディングの実装原理の詳細説明

Vue2.0/3.0双方向データバインディングの実装原理双方向データバインディングとは、データの変更...