Native Windows touch. No WSL. No friction. Just works.
A lightweight Windows-native implementation of the GNU touch command.
Create files and update timestamps instantly from CMD or PowerShell.
Single binary. Drop in PATH. Done.
Create and update files instantly - no WSL needed:
Working on Windows often means switching to WSL for simple tasks like:
• Creating files
• Updating timestamps
• Running quick scripts
WTouch removes that friction.
No environment switching. No overhead. Just one command.
Linux
touch file.txt
Windows (before)
WSL → touch file.txt
Windows (now)
wtouch file.txt
- Create files when they do not exist (unless
--no-create) - Update access (
-a) and modification (-m) times - Copy timestamps from another file (
-r) - Apply explicit timestamps via
-dand-t - Expand Windows wildcards internally (
FindFirstFileW) - Full Unicode support
- Works with files and directories
Download from Releases and place in your PATH:
wtouch file.txt$destination = "$env:ProgramFiles\wtouch"
New-Item -ItemType Directory -Path $destination -Force | Out-Null
Invoke-WebRequest -Uri "https://github.com/PolakiniO/WTouch/releases/latest/download/wtouch.exe" -OutFile (Join-Path $destination 'wtouch.exe')wtouch [OPTION]... FILE...Create a file:
wtouch newfile.txtUpdate modification time:
wtouch -m existing.txtUpdate access time:
wtouch -a existing.txtCopy timestamps:
wtouch -r source.txt target.txtSet explicit timestamp:
wtouch -t 202511101138 file.txt-a Change the access time only
-m Change the modification time only
-c, --no-create Do not create any files
-d STRING Parse explicit timestamp
-t STAMP [[CC]YY]MMDDhhmm[.ss]
-r FILE Use reference file timestamps
-- Treat following args as literal paths
-h, --help Show help
-V, --version Show version
-P, --path Show executable path
- C++ (native, primary)
- C (portable)
- Python (cross-platform)
- Bash (wrapper)
cmake --preset windows-release
cmake --build --preset windows-release
cmake --install build/windows-release --config Release.\scripts\uninstall-wtouch.ps1Clean removal. No leftovers.
- Dry-run mode
- UTC timestamp support
- Symlink handling
Originally bootstrapped using OpenAI Codex.
Found a bug? Have an idea?
Open an issue or start a discussion. Contributions are welcome.

