初期化:
多くのLinuxコマンドは、コマンドラインから、またはbashスクリプトを使用して電子メールを送信するために使用できます。ただし、システムにSMTPサーバーが正しく設定されていない場合、電子メール送信コマンドは機能しません。コマンドラインからメールを送信するように独自のSMTPサーバーを設定することも、GmailやYahooなどの有名なメールサービスプロバイダーの無料のSMTPサーバーを使用することもできます。このチュートリアルでは、GmailアカウントのSMTPサーバーを使用します。このタスクを実行するには、Gmailアカウントを選択し、そのアカウントで[安全性の低いアプリを許可する]オプションを有効にしてメールを送信する必要があります。このオプションを有効にするには、次のチュートリアルにアクセスしてください。
https://linuxhint.com/how-to-send-email-from-php/
このオプションを有効にした後、「root」権限でファイル「/etc/ssmtp/ssmtp.conf」を開き、ファイルの最後に次の行を追加する必要があります。セットアップを完了するには、メールアドレスを「AuthUser」に設定し、メールパスワードを「AuthPass」に設定する必要があります。
UseSTARTTLS=はい
FromLineOverride=はい
根= admin@example.com
mailhub= smtp.gmail.com:587
AuthUser=ユーザー名@gmail.com
AuthPass=パスワード
例-1:Sendmailコマンドの使用
Linuxの人気のある電子メール送信コマンドの1つは `sendmail`です。ユーザーは、このコマンドを使用して、コマンドラインから簡単に電子メールを送信できます。 Sendmailパッケージがシステムにインストールされていない場合は、次のコマンドを実行してパッケージをインストールします。
$sudoaptインストールssmtp
メールの内容が「email.txt」という名前のファイルに次の内容で保存されているとします。ここでは、「件名:」の後のテキストがメールの件名として送信され、残りの部分がメールの本文として送信されます。
email.txt
件名:sendmailを使用してメールを送信する
メール本文のテスト
次のコマンドのように、受信者のメールアドレスを指定して「sendmail」コマンドを実行します。
$sendmailユーザー名@gmail.com<email.txt
例2:「mail」コマンドの使用
Linuxで電子メールを送信するための最も一般的なコマンドは `mail`コマンドです。このコマンドはデフォルトではUbuntuにインストールされていません。次のコマンドを実行して、 `mail`コマンドをインストールします。
$sudoaptインストールmailutils次のコマンドは、このコマンドがシステムにインストールされている場合のバージョンを示します。
$郵便物-V
「-s」オプションは、メールの件名を定義するために「mail」コマンドで使用されます。次のコマンドのように、メールの件名と受信者のメールアドレスを指定して「-s」オプションで「mail」コマンドを実行します。 Cc:アドレスを要求します。 Cc:フィールドを使用しない場合は、空白のままにしてEnterキーを押します。メッセージ本文を入力し、Ctrl + Dを押して電子メールを送信します。
$郵便物-NS '主題'ユーザー名@gmail.com
コマンドにメールメッセージ本文を追加する場合は、「<<<’ operator like the following command.
$郵便物-NS 「メッセージの件名」ユーザー名@gmail.com<<< 「メッセージ本文のテスト」
「-a」オプションを使用して、「mail」コマンドで送信者の電子メールアドレスを追加することもできます。次のコマンドは、件名「メッセージの件名」、送信者の名前、メールアドレス「管理者」を含むメールを送信します<[メール保護]> ’と受信者のメールアドレス、[メール保護]メッセージ本文、「テストメッセージ」。
$メール-NS 「メッセージの件名」 -にFrom:Admin <管理者@example.com >>ユーザー名@gmail.com<<< 「テストメッセージ」
echoおよびpipe(|)コマンドを使用して、電子メールメッセージの本文を送信することもできます。次のコマンドは、パイプ(|)コマンドを使用してメッセージ本文を送信します。
$捨てた 「テストメッセージ」 |郵便物-NS 「メッセージの件名」ユーザー名@example.com
`mail`コマンドを使用し、カンマで区切って受信者のアドレスを追加することにより、複数の受信者に電子メールを送信できます。次のコマンドは、2人の受信者に電子メールを送信します。
$郵便物-NS 「テストメール」username1@example.com、username2@example.com<test.txt
例-3: `mutt`コマンドの使用
`mail`コマンドと同様に、` mutt`コマンドはデフォルトではUbuntuにインストールされていません。次のコマンドを実行して、 `mutt`コマンドをインストールします。
$sudoaptインストール雑種`mutt`コマンドは` mail`コマンドと同様に機能しますが、 `mutt`コマンドにはメールを送信するための独自のエディターがあります。有効な電子メールアドレスを指定して次のコマンドを実行し、電子メールを送信します。
$捨てたテストメッセージ|雑種-NS 「テストメール」ユーザー名@example.com
`mail`または` mutt`コマンドで「-a」オプションを使用して任意のファイルを添付できます。次のコマンドは、電子メールの送信中にファイルitems.txtを添付します。
$捨てた 「テストメッセージ」 |雑種-NS 「メッセージの件名」 -にitems.txt-ユーザー名@gmail.com
例-4:「SSMTP」コマンドの使用
別の電子メールコマンドは `ssmtp`コマンドです。以前にssmtpがインストールされていない場合は、最初にパッケージをインストールしてください。 ssmtpのインストールコマンドを例1に示します。 ssmtpコマンドとsendmailコマンドは同様に機能します。
有効な電子メールアドレスを使用して次のコマンドを実行します。メールの件名と本文を入力します。 Ctrl + Dキーを押して終了し、メールを送信します。
$ssmtpユーザー名@gmail.com
例-5:mailxコマンドの使用
テキストメッセージを送信するだけでなく、HTMLコンテンツをメール本文として送信できます。メッセージ本文として使用する「test.html」という名前のHTMLファイルを作成します。
test.html
< html >>< 体 >>>>
< h3 >>メール送信</ h3 >>
< 作る サイズ=「2」 色='ネット'>>メッセージ本文のテスト</ 作る >>
<</ 体 >>
</ html >>
`mailx`コマンドは` mail`コマンドのように機能します。 `mailx`コマンドでメッセージ本文としてHTMLコンテンツを送信するには、Content-Typeをtext / htmlとして指定する必要があります。次のコマンドは、「test.html」ファイルの内容を電子メールメッセージの本文として送信します。
$ mailx-に 'Content-Type:text / html' -NS 「mailxを使用してメールを送信する」<test.html'[メール保護]'
受信者のメールアカウントの受信トレイを確認すると、メールのリストが次の画像のように表示されます。
結論
上記のコマンドを適切に実行した後、読者がLinuxでコマンドラインから簡単に電子メールを送信できるようになることを願っています。