- How To Create Files – From The Command Line (The Easy Way!) – Windows, CMD
- Jump Right In:
- Navigate to where you want to create your file.
- Create A File Using CMD (Empty, Text, Batch).
- Creating files with the current date.
- Creating a dummy file with a specific size.
- Create Files From Different Directories.
- Create multiple files at once — Using CMD.
- What We’ll Learn:
- Navigate to where you want to create your file:
- Create A File Using CMD (Empty, Text, Batch).
- Text Files:
- Empty Text Files
- Batch Files
- Literally Any type of File:
- Creating files with the current date — Using CMD:
- Creating a dummy file with a specific size — Using CMD:
- Create Files From Different Directories — From CMD:
- Create multiple files at once — Using CMD:
- Numbered Files (File1, File2, File3):
- Named Files (First, Second, Third):
- Summary:
- That’s It!
- Windows commands
- Prerequisites
- Command shell overview
- Command-line reference A-Z
How To Create Files – From The Command Line (The Easy Way!) – Windows, CMD
Jump Right In:
Navigate to where you want to create your file.
Create A File Using CMD (Empty, Text, Batch).
Creating files with the current date.
Creating a dummy file with a specific size.
Create Files From Different Directories.
Create multiple files at once — Using CMD.
What We’ll Learn:
Welcome!
This guide is all about creating new files from the windows command line.
- We’ll start by learning, how to navigate to the location in which we want to create our file or folder from the command prompt.
- How to use the Echo command along with a redirector to create all sorts of files.
- How to embed the current date into the name of your new file.
- How to create dummy files with a specific size using FSutil.
- And finally, we’ll learn how to use a for loop to create multiple files at once with a single command.
Lets get started!
Navigate to where you want to create your file:
Before we begin learning how to create files we must first learn how to change the location of our command line into to the location in which we want to create our new file.
For this example, let’s assume that we want to create our file in our desktop directory.
1) Open a command prompt without administrator privileges
By default, the command prompt is located at a folder within your users directory that’s named after your computers username (C:\Users\MyPC)
2) Use the “Dir” command to view every file and folder in the current directory.
The name of every file and folder as well some information about each of them will immediately appear.
3) Navigate to the directory of your choice using the “CD” command.
“CD” stands for “Change Directory”. Remember to surround the name of the directory you want to navigate into within quotes.
Your current working directory will immediately change.
And that’s it! You should now have navigated into the directory of your choice.
In case you made a mistake you can navigate to the previous directory by typing Cd followed by two dots.
The double dots represent the parent directory.
Now that we are located in the correct directory lets create our file.
Create A File Using CMD (Empty, Text, Batch).
Lets start with learning how to create files from our command line. To do so we will need to use the “Echo” command along with a redirector.
What exactly is echo and a redirector I hear you ask?
This might start to sound complicated, but don’t worry its actually pretty simple.
- Echo is primarily used to print variables or strings to the command line, similar to “print” or “Console.WriteLine” in other programming languages.
- Redirectors are special symbols that can be used complete many functions such as combine two commands or redirect the output of one command into input for another.
Do you see where I am going with this?
We can use the echo command to print a string and redirect its output into a new file by using a redirector, specifically the greater than redirector (>).
Lets see what that would look like:
Text Files:
Lets start by creating a new text file.
To do so all we have to do is type the echo command followed by the text we want our new file to have, the grater than redirector, and the name of your new file within quotes along with the .txt extension.
You should see a new file in your current directory. Pretty simple right?
To view the contents of a file we just created directly from the command line we can use the “Type” command. Simply enter type followed by the name of the file we just created.
The contents of the file will immediately be shown in the command prompt.
Apart from creating a new file we can add or append text to an existing text file. To do so we need to use the greater than symbol twice. Here is what that would look like:
Our file will now contain the following text:
Empty Text Files
In many cases you might want to crate a completely empty text file. The syntax for this command is very similar to our previous command however this time we need to add a dot directly after the echo command.
An empty file will immediately appear in your current directory.
In case you are wondering, the dot tells the echo command to not output anything.
Batch Files
While creating text files is nice, in may case you will want to create batch files. Doing so is very simple, all we have to do is replace the extension of the name of our new file from .txt to .bat.
Here is what that would look like:
And a new batch file will immediately be created in your current directory.
Literally Any type of File:
In a similar way by using the extension of our choice we can create literally any type of file.
- .docx Creates word documents.
- .py Creates python scripts.
- .sql Creates SQL databases.
- And so on…
Creating files with the current date — Using CMD:
You can embed the current date right into the name of the file you are creating by taking advantage of the %Date% automatic variable. Here is what our command would look like:
This command will create a text file with the current date as its name in our current directory.
In my case the file will be named:
You might be wondering what /=- does.
By default, the date in the %Date% variable is stored in this format:
However, to use this as the name of a file we need to replace the backward slashes with any other symbol, so that the command line doesn’t misinterpret our date as a directory.
That is exactly what /=- does, you can replace the dash with any symbol of your choice.
Creating a dummy file with a specific size — Using CMD:
Using the windows command prompt you can create empty, dummy files with a specific size of your choice.
To do so we need to use the FSutil command instead of echo, which is what we have been using thus far.
FSutil stands for file system utility and as the name suggests it can be used to perform various operations on our file system.
But you don’t care about any of that, you just want to create a file.
To do so all you have to do is use the following syntax:
Confused? Lets break it down:
- The File parameter instructs the FSutil command to create a file. Duh.
- CreateNew Instruct it to create a new item.
- Them we have the name of our new file, in this case: Dummy File.
- And finally, the size we want our file to have in bytes.
In this case a 10 MB file will be created.
Adjust the number of bytes to create a file with the size you want.
In case you want to convert gigabytes to bytes, use this online converter.
Create Files From Different Directories — From CMD:
In all the above examples our new files will be created in the current directory.
In case you want to create your new file in a directory other than your current one, you need to enter your target directory just before the name of your new file.
So here is what our echo command would look like:
This command will create an empty file in our documents directory.
To make it work for you replace with your computers username.
And here is what our FSutil command would look like:
This command will create a dummy file with a 10 MB size in our desktop directory.
Once again replace with your computers username.
Create multiple files at once — Using CMD:
In all the above examples we created only a single file. The beauty of the command line however is that you can complete complex, time consuming tasks in an instance, such as creating multiple files at once.
To do so, we need to use a for loop. For loops repeat an instruction a certain number of times.
Lets take a look at all the ways we can use a for loop to create multiple files:
Numbered Files (File1, File2, File3):
Lets start with creating numbered files or, files for which only a number changes between their names.
Without further a do, here is what our command would look like:
This command will create ten empty files in our current directory with the following names: File 1.txt, File 2.txt, File 3.txt, and so on…
This command might also look a little complicated, so let’s break it down:
- The /L parameter instructs the for command to iterate through the numbers in our parentheses, instead of using them directly as the names of our files.
- Our A parameter specifies a single letter replaceable parameter. You can replace A with any letter of your choice. This is similar to a variable, in the sense that its value changes.
- After that we have our condition, the first number specifies the starting number, the second number is the step, and the third number is the ending number.
- And finally, in parenthesis we have the command that will be executed every time the loop is executed.
Adjust the above command accordingly to suit your needs.
To create your files in a different directory, add the path of your choice, just before the name of your new files.
If you are unsure, here’s what that would look like:
Replace with your computers username.
Also, if you are planning on running any of these commands from a batch script you need to use two percentage signs instead of one, so that they are interpreted correctly.
Named Files (First, Second, Third):
Creating named files or, multiple files with different, specified names is quite similar.
Here is what that would look like:
The above command will create three files in your current directory with the following names: First.txt, Second.txt, Third.txt.
To make this command work for you, replace the names you want your files to have in the first parenthesis. And if necessary, replace, or adjust the second parenthesis with the command that will create your files the way you require.
The number of files that will be created depends entirely on how many file names you feed into the loop.
Once again to create your files in a different directory, add the target path just before the A parameter in the second parenthesis. Take a look at the above commands if you need a reference.
Finally, if you are planning on running this command from a batch script instead of the command line, you need to use two percentage signs instead of one so that your command is interpreted correctly.
Summary:
- Navigate to the directory you want to create a file into using the “CD” and “Dir” commands.
- Use the echo command along with the greater than redirector to create any type of file.
- Take advantage of the %Date% automatic variable and embed the current date into the names of your files.
- Use the FSutil command to crate a new file with a specific size.
- Enter a path before the name of your file to create it in any directory.
- Use a For loop to create multiple numbered or named files at once.
That’s It!
You now know how to create many types of files directly from the command prompt.
If you liked this short guide take a look at a few of our other posts related to the windows command line, or if you really liked it consider enrolling in our video course where you will learn the ins and outs of the Windows command Line.
Windows commands
All supported versions of Windows (server and client) have a set of Win32 console commands built in.
This set of documentation describes the Windows Commands you can use to automate tasks by using scripts or scripting tools.
Prerequisites
The information that is contained in this topic applies to:
- Windows Server 2019
- Windows Server (Semi-Annual Channel)
- Windows Server 2016
- Windows Server 2012 R2
- Windows Server 2012
- Windows Server 2008 R2
- Windows Server 2008
- Windows 10
- Windows 8.1
Command shell overview
The Command shell was the first shell built into Windows to automate routine tasks, like user account management or nightly backups, with batch (.bat) files. With Windows Script Host you could run more sophisticated scripts in the Command shell. For more information, see cscript or wscript. You can perform operations more efficiently by using scripts than you can by using the user interface. Scripts accept all Commands that are available at the command line.
Windows has two command shells: The Command shell and PowerShell. Each shell is a software program that provides direct communication between you and the operating system or application, providing an environment to automate IT operations.
PowerShell was designed to extend the capabilities of the Command shell to run PowerShell commands called cmdlets. Cmdlets are similar to Windows Commands but provide a more extensible scripting language. You can run Windows Commands and PowerShell cmdlets in Powershell, but the Command shell can only run Windows Commands and not PowerShell cmdlets.
For the most robust, up-to-date Windows automation, we recommend using PowerShell instead of Windows Commands or Windows Script Host for Windows automation.
You can also download and install PowerShell Core, the open source version of PowerShell.
Incorrectly editing the registry may severely damage your system. Before making the following changes to the registry, you should back up any valued data on the computer.
To enable or disable file and directory name completion in the Command shell on a computer or user logon session, run regedit.exe and set the following reg_DWOrd value:
To set the reg_DWOrd value, use the hexadecimal value of a control character for a particular function (for example, 0 9 is Tab and 0 08 is Backspace). User-specified settings take precedence over computer settings, and command-line options take precedence over registry settings.
Command-line reference A-Z
To find information about a specific command, in the following A-Z menu, click the letter that the command starts with, and then click the command name.