How to Send Email From the Command Line in Windows Without Extra Software

In our digital world, email remains a fundamental tool for communication. Yet, there are situations where you need to send an email, and your usual email client isn’t available, or you prefer a more direct, scriptable method. For users of Windows operating systems, there are built-in features that allow the sending of email directly from the command line. This might sound daunting if you’re not a tech-savvy individual, but don’t worry; this guide will walk you through several methods of sending emails from the command line, step-by-step, without the need for any extra software.

how to send email from the command line in windows without extra software

Using PowerShell

PowerShell is a powerful scripting tool built into Windows that can also send emails. It’s versatile and integrated into the Windows environment, making it an excellent choice for sending emails via command line.

Detailed Steps:

  1. Open PowerShell: Press Win + S, type “PowerShell”, and open the application.
  2. Compose your email: Use the Send-MailMessage cmdlet to construct your email. Here’s an example command:
    Send-MailMessage -SMTPServer -To "[email protected]" -From "[email protected]" -Subject "Test email" -Body "This is a test email from PowerShell!"
  3. Press ‘Enter’: After typing the command, press ‘Enter’ to send the email.


PowerShell is a built-in tool, so it’s convenient, and there’s no need for additional downloads. It offers scripting capabilities, making it ideal for automating email tasks. However, this method requires basic knowledge of PowerShell cmdlets and might seem complex at first for non-technical users.

Command Prompt with SMTP Server

While the Command Prompt itself doesn’t have a built-in feature to send emails, it can interact with an SMTP server to send mail using a tool called ‘Telnet’, which is included in Windows features.

Detailed Steps:

  1. Enable Telnet: Go to Control Panel > Programs and Features > Turn Windows features on or off. Check ‘Telnet Client’ and click OK.
  2. Open Command Prompt: Press Win + R, type “cmd”, and press Enter.
  3. Connect to your SMTP server: Type telnet 25 and press Enter to connect to the SMTP server through port 25 (the default SMTP port).
  4. Communicate with the SMTP server: Follow the SMTP dialogue to log in and send an email, entering SMTP commands like HELO, MAIL FROM:, RCPT TO:, DATA, and finally QUIT to log off.


Utilizing the Command Prompt with SMTP requires knowledge of SMTP commands and can be complex for non-technical users. However, it’s a straightforward and direct method without extra software once the SMTP commands are understood.

Batch File and PowerShell Script

A batch file can call a PowerShell script containing the email command, simplifying the process of sending an email from the command line.

Detailed Steps:

  1. Create a PowerShell script: Write your Send-MailMessage cmdlet in PowerShell script (.ps1) file.
  2. Create a Batch file: Write a batch (.bat) file to execute the PowerShell script.
  3. Run the Batch file: Double-click the batch file to send the email through the PowerShell script.


Using a batch file to call a PowerShell script makes it easy to send emails repeatedly with a single click. It does require the initial setup of both batch and PowerShell scripts, which can be an extra step for the uninitiated.

Tips for Command Line Email Sending

If you’re not familiar with SMTP servers or PowerShell, here are additional tips and tricks to help you send emails:

  • Ensure that your firewall allows outbound connections on the SMTP port used.
  • For secure email sending, you may need to use port 465 or 587 and SSL/TLS encryption, which could require additional commands or settings in PowerShell.
  • Keep your SMTP server, user credentials, and port information at hand.
  • You can schedule your email scripts to run at specific times using Task Scheduler in Windows.
  • Test your email sending process with your own email address first to ensure everything works smoothly.


Sending an email from the command line in Windows can seem complex, but it opens up new possibilities for automating daily tasks. Whether you choose to use PowerShell, a batch file, or delve into the more complex Telnet commands with SMTP, you now have the tools and steps needed to achieve this task. Remember, practice makes perfect, and with time these processes will become second nature.


  1. Do I need internet access to send emails from the command line?
    Yes, an internet connection is necessary to access the SMTP server and send emails.

  2. Can I send attachments in emails from the command line?
    Yes, with PowerShell you can send attachments using the -Attachments parameter in the Send-MailMessage cmdlet.

  3. Is it safe to send sensitive information via command line email?
    When sending sensitive information, ensure that the SMTP server supports encrypted connections (SSL/TLS). Otherwise, it’s not recommended as the information could be intercepted during transmission.

You may also like

Leave a reply

Your email address will not be published. Required fields are marked *

More in How-To