HowTo: Retrieve Email from a POP3 Server using the Command Line

The POP3 (Post Office Protocol Version 3) is an application-layer Internet standard protocol used by local Email clients to retrieve Email from a remote server over a TCP/IP connection.

This tutorial shows how to connect to POP3 mail server and manage incoming Email using the ‘telnet’ command.

Step 1: Open a connection from your computer to a POP3 mail server

$ telnet pop.domain.ext 110
Trying ???.???.???.???...
Connected to pop.domain.ext.
Escape character is '^]'.
+OK ready
  • pop.domain.ext – Your mail server;
  • 110 – Default port for POP3.

Step 2: Type your Login

> USER username
+OK Password required for UserName.

Step 3: Type your Password

> PASS password
+OK username has ? visible messages (? hidden) in ????? octets.

POP3 Commands with Description

Here are the basic POP3 commands, that you can use to manage your incoming Email.

CommandDescriptionExample
USER [username] 1st login command USER Stan
+OK Please enter a password
PASS [password] 2nd login command PASS SeCrEt
+OK valid logon
QUIT Logs out and saves any changes QUIT
+OK Bye-bye.
STAT Returns total number of messages and total size STAT
+OK 2 320
LIST Lists all messages LIST
+OK 2 messages (320 octets)
1 120
2 200

LIST 2
+OK 2 200
RETR [message] Retrieves the whole message RETR 1
+OK 120 octets follow.
***
DELE [message] Deletes the specified message DELE 2
+OK message deleted
NOOP The POP3 server does nothing, it merely replies with a positive response. NOOP
+OK
RSET Undelete the message if any marked for deletion RSET
+OK maildrop has 2 messages (320 octets)
TOP [message] [number] Returns the headers and number of lines from the message TOP 1 10
+OK
***
0 (0)
Article Rating (No Votes)
Rate this article
Attachments
There are no attachments for this article.
Comments
There are no comments for this article. Be the first to post a comment.
Full Name
Email Address
Security Code Security Code
Related Articles RSS Feed
Understanding logrotate utility part 1
Viewed 1825 times since Fri, Nov 30, 2018
RHCS6: Mirror/unmirror a GFS2 volume
Viewed 5338 times since Sun, Jun 3, 2018
Linux Customizing Bash
Viewed 2189 times since Sun, Dec 6, 2020
LUKS dm-crypt/Device encryption GUIDE
Viewed 2370 times since Fri, Jul 13, 2018
RHEL: GPT/MBR partition tables (using disks larger than 2 TiB)
Viewed 12405 times since Sun, May 27, 2018
Linux Chage Command to Set Password Aging for User
Viewed 2501 times since Tue, Sep 11, 2018
OEL 7 – How to disable IPv6 on Oracle Linux 7
Viewed 20559 times since Fri, Aug 3, 2018
FIO (Flexible I/O) – a benchmark tool for any operating system
Viewed 19543 times since Wed, Jul 25, 2018
HowTo: The Ultimate Logrotate Command Tutorial with 10 Examples
Viewed 5388 times since Fri, Nov 30, 2018
How to disable SSH cipher/ MAC algorithms for Linux and Unix
Viewed 47157 times since Fri, Aug 21, 2020