curlコマンドでpop3|メールの一覧取得、内容の閲覧、削除方法
目次
スポンサードリンク
本記事では、curlコマンドでpop3、またはpop3sプロトコルでメールの一覧取得、内容の読み方、削除方法を解説します。
受信メールの一覧取得
下記コマンドで受信メールを一覧表示することができます。メールのIDとサイズが表示されます。Gmailの場合はプロトコルはPOP3のセキュアバージョンであるPOP3S (POP3 over SSL/TLS)を使用しているため、URLのスキーム部分が pop3s:// となっています。 POP3でアクセスする場合は、pop3:// に変更してみてください。
[root@hostname ~]# curl -u 'メールアカウント:パスワード' pop3s://pop.gmail.com:995
1 6519
2 2146
3 2297
4 10701
5 2942
6 18918
7 44598
8 16732
9 5021
10 12027
メール内容の閲覧
下記コマンドで指定したメールIDのメールヘッダーと本文を閲覧することができます。
[root@hostname ~]# curl -u 'メールアカウント:パスワード' pop3s://pop.gmail.com:995/メールID
メールの削除
下記コマンドで指定したメールIDのメールを削除することができます。ただし、私が試した環境とGmailアカウントではサーバーから応答がなかったです。メールサーバーの設定によっては削除できないこともあるようです。
[root@hostname ~]# curl -u 'メールアカウント:パスワード' --request DELE pop3s://pop.gmail.com:995/メール番号
Gmailからメールを取得する場合
Gmailからメールの情報を取得したい場合は、Gmail側の設定でpop3を事前に有効にしておく必要があります。また、Googleアカウントで 2段階認証を有効化している場合は、POP3でアクセスするためのアプリパスワードを発行する必要があります。
アプリパスワードの発行方法は下記で確認できます。
https://support.google.com/accounts/answer/185833?sjid=311477927459299559-AP
検証した環境のcurlバージョン
検証で使用したcurlのバージョンは以下でした。
[root@hostname ~]# curl --version
curl 7.29.0 (x86_64-redhat-linux-gnu) libcurl/7.29.0 NSS/3.34 zlib/1.2.7 libidn/1.28 libssh2/1.4.3
Protocols: dict file ftp ftps gopher http https imap imaps ldap ldaps pop3 pop3s rtsp scp sftp smtp smtps telnet tftp
Features: AsynchDNS GSS-Negotiate IDN IPv6 Largefile NTLM NTLM_WB SSL libz unix-sockets
Linuxコマンドについて学べるおすすめ書籍
Linuxコマンドの知識は、プログラマにとって長く役立つ知識です。 私はこちらの書籍で一通り知識を抑えました。基本から丁寧に解説されています。
Linux教科書 図解でパッとわかる LPIC/LinuC
はじめてLPICを受ける方向け、手を動かしながらLinuxについて学びたい方におすすめ。30日間の無料体験もできる『Kindle Unlimited』でも読むことができます。
Linuxコマンドについて徹底的に学べるUdemy講座
もう絶対に忘れない Linux コマンド【Linux 100本ノック+名前の由来+丁寧な解説で、長期記憶に焼き付けろ!】
関連記事
Search
Recent Posts
- カーネル更新やパッケージのパッチ適用後、OSの再起動が必要か確認するLinuxコマンド(needs-restarting)
- OpenSSHのエラー「bad ownership or modes for chroot directory component」の原因と解消方法
- Apacheの起動状態をチェックして停止してる場合にApacheを起動するシェルスクリプト
- Amazon LinuxのOSバージョンを調べる方法|/etc/redhat-release の代替ファイル
- MYSQLでダンプファイルを取得する際に発生したエラー「Couldn't execute 'SELECT BINLOG_GTID_POS('', '0')': You are not using binary logging (1381)」の原因と対処方法