Batch File Caps Lock Num Lock Now
powershell.exe -Command "$wsh = New-Object -ComObject WScript.Shell; $wsh.SendKeys('{CAPSLOCK}')"
To force a key to be "ON" only if it is currently "OFF," use PowerShell to check the status first. Batch File Caps Lock Num Lock
Can I turn Caps on/of from a batch file in Win 7? - Super User powershell