Windows: `Touch` Command – Equivalent

The touch command in Linux is used to change a file’s “Access“, “Modify” and “Change” timestamps to the current time and date, but if the file doesn’t exist, the touch command creates it.

If you simply want to create an empty file from the command-line prompt (CMD) or a Windows PowerShell – the type and copy commands can be considered as a Windows touch command equivalent.

The file timestamps in Windows can be changed using the built-in PowerShell commands.

Cool Tip: Windows cat command equivalent in CMD and PowerShell! Read more →

Windows `Touch` Command Equivalent

To create a new file, as a Windows touch equivalent, you can use one of these commands:

C:\> type nul >> "file.txt"
- or -
C:\> copy nul "file.txt"

To change a file timestamps to the current time and date, execute the following commands from the PowerShell:

PS C:\> (Get-Item "file.txt").CreationTime=$(Get-Date -format o)
PS C:\> (Get-Item "file.txt").LastWriteTime=$(Get-Date -format o)
PS C:\> (Get-Item "file.txt").LastAccessTime=$(Get-Date -format o)

Cool Tip: Windows grep command equivalent in CMD and PowerShell! Read more →

To set the specific timestamps, execute:

PS C:\> (Get-Item "file.txt").CreationTime=("01 March 2020 09:00:00")
PS C:\> (Get-Item "file.txt").LastWriteTime=("20 April 2020 17:00:00")
PS C:\> (Get-Item "file.txt").LastAccessTime=("20 April 2020 17:00:00")

The timestamps can be displayed using the following command:

PS C:\> Get-Item file.txt | Format-List CreationTime, LastAccessTime, LastWriteTime