Given is a text file, say
my_file.txt. How to modify its content in your Windows command line working directory?
I’ll start with the most direct method to solve this problem in 90% of cases and give a more “pure” in-terminal method afterward.
Method 1: Using Notepad
The easiest way to edit a text file in the command line (CMD) on your Windows machine is to run the command
notepad.exe my_text_file.txt, or simply
notepad my_text_file.txt, in your cmd to open the text file with the visual editor Notepad.
You can also skip the
.exe prefix in most cases:
Now, you may ask:
💡 Is Notepad preinstalled in any Windows installation? The answer is: yes! Notepad is a generic text editor to create, open, and read plaintext files and it’s included with all Windows versions.
Here’s how that looks on my Win 10 machine:
When I type in the command
notepad.exe my_text_file.txt, CMD starts the Notepad visual editor in a new window.
I can then edit the file and hit
CTRL + S to save the new contents.
But what if you cannot open a text editor—e.g. if you’re logged into a remote server via SSH?
Method 2: Pure CMD Approach
If you cannot open Notepad or other visual editors for some reason, a simple way to overwrite a text file with built-in Windows command line tools is the following:
- Run the command
echo 'your new content' > my_file.txtto print the new content using
echoand pipe the output into the text file
- Check the new content using the command
C:\Users\xcent\Desktop>echo 'hello world' > my_file.txt C:\Users\xcent\Desktop>type my_file.txt 'hello world'
Here’s what this looks like on my Windows machine, where I changed
my_file.txt to contain the text
This is a simple and straightforward approach to small changes. However, if you have a large file and you just want to edit some minor details, this is not the best way.
Method 3: Change File Purely In CMD (Copy Con)
If you need a full-fledged solution to edit potentially large files in your Windows CMD, use this method! 👇
To create a new file in Windows command prompt, enter
copy con followed by the target file name (
copy con my_file.txt). Then enter the text you want to put in the file. To end and save the file, press
copy con my_file.txt
How this looks on my Win machine:
A couple of notes:
💡 Info: To edit an existing file, display the text by using the
type command followed by the file name. Then copy and paste the text into the
copy con command to make changes. Be careful not to make any typos, or you’ll have to start over again. Backspace works if you catch the mistake before pressing Enter. Note that this method may not work in PowerShell or other command line interfaces that don’t support this feature.
Method 4: If you SSH’d to a Unix Machine
Of course, if you have logged in a Unix-based machine, you don’t need to install any editor because it comes with powerful integrated editors such as vim or emacs.
One of the following three commands should open your file in a terminal-based editing mode:
vim my_text_file.txt vi my_text_file.txt emacs my_text_file.txt
You can learn more about Vim here.
To edit a
file.txt in the command line, use the command
notepad file.txt to open a graphical editor on Windows.
If you need a simple file edit in your terminal without a graphical editor and without installation, you can use the command
echo 'new content' > file.txt that overwrites the old content in
If you need a more direct in-CMD text editor run
copy con file.txt to open the file in editing mode.
If you’re SSH’d into a Unix machine, running the Vim console-based editor may be the best idea. Use
vim file.txt or
vi file.txt to open it.
Feel free to join our email coding academy (it’s free):
👉 Recommended: How to Edit a Text File in PowerShell (Windows)
While working as a researcher in distributed systems, Dr. Christian Mayer found his love for teaching computer science students.
To help students reach higher levels of Python success, he founded the programming education website Finxter.com that has taught exponential skills to millions of coders worldwide. He’s the author of the best-selling programming books Python One-Liners (NoStarch 2020), The Art of Clean Code (NoStarch 2022), and The Book of Dash (NoStarch 2022). Chris also coauthored the Coffee Break Python series of self-published books. He’s a computer science enthusiast, freelancer, and owner of one of the top 10 largest Python blogs worldwide.
His passions are writing, reading, and coding. But his greatest passion is to serve aspiring coders through Finxter and help them to boost their skills. You can join his free email academy here.