One of my clients recently required me to create a file if it doesn’t exist. PowerShell is the best option for this kind of requirement. In this tutorial, I will show you different methods to check for the existence of a file and create it if it doesn’t exist using PowerShell.
To create a file in PowerShell if it does not exist, you can use the Test-Path cmdlet combined with New-Item. First, check if the file exists using Test-Path and then use New-Item -Path “yourFilePath” -ItemType File to create the file if it does not exist. This ensures the file is only created when necessary, avoiding overwriting an existing file.
Create File If Not Exists In PowerShell
Here are four methods to create a file if not exists using PowerShell. You can follow all the examples with me.
All 4 methods work well for me, but you can use the Method 1 and 2.
Method 1: Using Test-Path and New-Item
The Test-Path cmdlet in PowerShell is used to check if a path exists. This can be a file or a directory. If the file does not exist, you can use New-Item to create it in PowerShell.
Here’s a complete script using Test-Path and New-Item:
$filePath = "C:\Bijay\File.txt"
# Check if the file exists
if (-not (Test-Path -Path $filePath)) {
# The file does not exist, create it
New-Item -Path $filePath -ItemType File
} else {
Write-Host "The file already exists."
}This script checks if “File.txt” exists in the specified path. If it doesn’t, New-Item creates the file. If the file already exists, it prints a message to the console.
You can see the output in the screenshot below:

Method 2: Using Out-File
PowerShell Out-File is another cmdlet that can create a file if it doesn’t exist. It is primarily used to send output to a file, but it will also create the file if it’s not present.
Here’s the complete script and how you can use Out-File:
$filePath = "C:\MyFolder\File.txt"
$content = "Your content here"
# Send the content to the file, creating it if it does not exist
$content | Out-File -FilePath $filePath -ForceThe -Force parameter ensures that the file is created if it doesn’t exist. Note that if the file already exists, Out-File will overwrite it unless you specify the -Append parameter.
You can see the screenshot below after I executed the PowerShell script using VS code. It created the file as it did not exist.

Method 3: Using > and >> Redirection Operators
In PowerShell, you can also use the > and >> operators to create a file. The > operator will overwrite the file if it exists, while the >> operator will append to the file if it exists or create a new one if it doesn’t.
$filePath = "C:\Bijay\File.txt"
$content = "Your content here"
# Create or overwrite the file with content
$content > $filePath
# Append content to the file, or create it if it doesn't exist
$content >> $filePathThis method doesn’t provide a direct way to check if the file exists before creating or modifying it, but it will create it.
Method 4: Using Add-Content with Test-Path
PowerShell Add-Content is a cmdlet that appends content to a file. You can combine with Test-Path, to create a file if it doesn’t exist in PowerShell.
$filePath = "C:\MyFolder\File.txt"
$content = "This is a dummy content"
# Check if the file exists
if (-not (Test-Path -Path $filePath)) {
# The file does not exist, use Add-Content to create it and add content
Add-Content -Path $filePath -Value $content
} else {
Write-Host "The file already exists."
}This method allows you to append content to a new file or an existing one without overwriting any existing content in PowerShell.
Conclusion
PowerShell offers several ways to create a file if it doesn’t exist. You can use Test-Path with New-Item, Out-File, redirection operators, or Add-Content, etc. methods to create a file if it does not exist in PowerShell.
Now, you should be able to create a file if it does not exist in PowerShell.
You may also like:
- How to Check if a File Exists in PowerShell?
- How To Delete File If Exists In PowerShell?
- How to Write String to File in PowerShell
- Count Words in a File Using PowerShell
Bijay Kumar is an esteemed author and the mind behind PowerShellFAQs.com, where he shares his extensive knowledge and expertise in PowerShell, with a particular focus on SharePoint projects. Recognized for his contributions to the tech community, Bijay has been honored with the prestigious Microsoft MVP award. With over 15 years of experience in the software industry, he has a rich professional background, having worked with industry giants such as HP and TCS. His insights and guidance have made him a respected figure in the world of software development and administration. Read more.