It’s easy to append text to a file with Windows Powershell with the Add-Content cmdlet, here are some examples:
- Create a sample text file using notepad. I have created mine like this:
- Open a Powershell Window and type:
Add-Content C:\temp\test.txt "Test"
If you open the text file again, you will see the text has been appended on to the end of the existing line:
The above example is fine, but as you can see the data was not written to a new line.
Example PowerShell to append text to a file on to a new line
To append content on to a new line you need to use the escape character followed by the letter “n”:
So to continue the example above you could use:
Add-Content C:\temp\test.txt "`nThis is a new line"
And then the resulting text file would look like this:
Append formatted data with Powershell by using tabs and new lines
This example creates a tab formatted file, the output looks like this:
The Powershell to create the above example is:
Add-Content C:\temp\test.txt "`nItem`tQty`tValue`tTotal" Add-Content C:\temp\test.txt "`nPants`t4`t32.22`t128.88" Add-Content C:\temp\test.txt "`nSocks`t3`t5.07`t15.21" Add-Content C:\temp\test.txt "`nShoes`t12`t136.57`t1638.84"
As you can see, the tabs are added with the special character “`t”.
Appending to a file using redirection
The process described above seems to be the “normal” way to append to a file in PowerShell. But if you have come from a Unix or Linux background that will probably seem like hard work compared to just using command redirection, which also works perfectly well in PowerShell. For example:
"This is a test" >> Testfile.txt
I don’t know why this method isn’t used more in PowerShell because it is much more succinct than “Add-Content”. Perhaps it is because it does not have the same level of functionality, in most cases it is fine.
ray says
awesome! thanks!
Roscoe Sandstone says
This is totally useless in how to use the -Append modifier to an Out-File