|
|
|
NirCmd v2.87
Copyright (c) 2003 - 2024 Nir Sofer
|
See Also
Description
NirCmd is a small command-line utility that allows you to do some useful tasks without
displaying any user interface. By running NirCmd with simple command-line option, you can
write and delete values and keys in the Registry, write values into INI file, dial to your
internet account or connect to a VPN network, restart windows or shut down the computer,
create shortcut to a file, change the created/modified date of a file, change your display
settings, turn off your monitor, open the door of your CD-ROM drive, and more...
Examples of what you can do with NirCmd
Open the door of J: CD-ROM drive
|
nircmd.exe cdrom open j:
|
Close the door of Y: CD-ROM drive
|
nircmd.exe cdrom close y:
|
Speaks the text currently in the clipboard (For Windows XP/Vista/7/8).
|
speak text ~$clipboard$
|
Speaks the text stored inside speak.txt into speak.wav filename (For Windows XP/Vista/7/8).
|
speak file "c:\temp\speak.txt" 0 100 "c:\temp\speak.wav" 48kHz16BitStereo
|
Increase the system volume by 2000 units (out of 65535)
|
nircmd.exe changesysvolume 2000
|
Decrease the system volume by 5000 units (out of 65535)
|
nircmd.exe changesysvolume -5000
|
Set the volume to the highest value
|
nircmd.exe setsysvolume 65535
|
Mute the system volume
|
nircmd.exe mutesysvolume 1
|
Unmute the system volume
|
nircmd.exe mutesysvolume 0
|
Switch the system volume between the mute and normal state.
|
nircmd.exe mutesysvolume 2
|
Create a shortcut on your desktop that switch the system volume between the mute and normal state.
|
nircmd.exe cmdshortcut "~$folder.desktop$" "Switch Volume" mutesysvolume 2
|
Turn off the monitor
|
nircmd.exe monitor off
|
Start the default screen saver
|
nircmd.exe screensaver
|
Put your computer in 'standby' mode
|
nircmd.exe standby
|
log off the current user
|
nircmd.exe exitwin logoff
|
Ask if you want to reboot, and if you answer 'Yes', reboot the computer.
|
nircmd.exe qboxcom "Do you want to reboot ?" "question" exitwin reboot
|
Turn off your computer
|
nircmd.exe exitwin poweroff
|
Turn off all computers specified in computers.txt !
|
multiremote copy "c:\temp\computers.txt" exitwin poweroff force
|
Dial to "My Internet" connection
|
nircmd.exe rasdial "My Internet"
|
Disconnect the "My Internet" connection
|
nircmd.exe rashangup "My Internet"
|
Make your Internet Explorer windows 75% transparent ! (192 / 256)
|
nircmd.exe win trans ititle "internet explorer" 192
|
Minimize all your Internet Explorer windows
|
nircmd.exe win min class "IEFrame"
|
Close all your Internet Explorer windows
|
nircmd.exe win close class "IEFrame"
|
Close all your Explorer windows (My Computer, folders, and so on)
|
nircmd.exe win close class "CabinetWClass"
|
Hide all your Internet Explorer windows
|
nircmd.exe win hide class "IEFrame"
|
Show all your Internet Explorer windows (after you made them hidden with previous example)
|
nircmd.exe win show class "IEFrame"
|
Center all top-level windows
|
nircmd.exe win center alltop
|
Remove the title bar of My Computer window.
|
nircmd.exe win -style title "my computer" 0x00C00000
|
Return the title bar of My Computer window that we removed in the previous example.
|
nircmd.exe win +style title "my computer" 0x00C00000
|
Set the My Computer window to right-to-left order (For hebrew and arabic languages)
|
nircmd win +exstyle title "my computer" 0x00400000
|
Set all child windows of My Computer window to right-to-left order (For hebrew and arabic languages)
|
nircmd win child title "my computer" +exstyle all 0x00400000
|
Create a shortcut on your desktop that closes all your Internet Explorer windows
|
nircmd.exe cmdshortcut " "~$folder.desktop$ "Close All IE" win close class "IEFrame"
|
Create a shortcut on your desktop that hides all your Internet Explorer windows
|
nircmd.exe cmdshortcut " "~$folder.desktop$ "Hide All IE" win hide class "IEFrame"
|
Create a shortcut on your desktop that shows back all your Internet Explorer windows
|
nircmd.exe cmdshortcut " "~$folder.desktop$ "Show All IE" win show class "IEFrame"
|
Set the Windows Calculator as top-most window (above all other windows)
|
nircmd.exe win settopmost title "Calculator" 1
|
Set the Windows Calculator back to regular window (non top-most window)
|
nircmd.exe win settopmost title "Calculator" 0
|
Create a shortcut to Windows calculator under Start Menu->Programs->Calculators
|
nircmd.exe shortcut "f:\winnt\system32\calc.exe" "~$folder.programs$\Calculators" "Windows Calculator"
|
Hide the desktop window
|
nircmd.exe win hide class progman
|
Show the desktop window (After hiding it in previous example)
|
nircmd.exe win show class progman
|
Hide the start button on the system tray
|
nircmd.exe win child class "Shell_TrayWnd" hide class "button"
|
Show the start button on the system tray
|
nircmd.exe win child class "Shell_TrayWnd" show class "button"
|
Hide the clock on the system tray
|
nircmd.exe win child class "Shell_TrayWnd" hide class "TrayClockWClass"
|
Show the clock on the system tray
|
nircmd.exe win child class "Shell_TrayWnd" show class "TrayClockWClass"
|
Kill (terminate) all instance of Internet Explorer processes
|
nircmd.exe killprocess iexplore.exe
|
Create a shortcut on your desktop that opens the door of K: CDROM drive when you run it.
|
nircmd.exe cmdshortcut "~$folder.desktop$" "Open CDROM" cdrom open k:
|
Create a shortcut to NirSoft Web site on your desktop
|
nircmd.exe urlshortcut "http://www.nirsoft.net" "~$folder.desktop$" "NirSoft"
|
Add NirSoft Web site to your Favorities under Links folder.
|
nircmd.exe urlshortcut "http://www.nirsoft.net" "~$folder.favorites$\Links" "NirSoft"
|
Create a shortcut to NirSoft Web site on the desktop of all computers listed in computers.txt
|
nircmd.exe multiremote copy "c:\temp\computers.txt" urlshortcut "http://www.nirsoft.net" "~$folder.common_desktop$" "NirSoft"
|
Set the display mode to 800x600x24bit colors
|
nircmd.exe setdisplay 800 600 24
|
Create a shortcut on the desktop that set the display mode to 800x600x24bit colors
|
nircmd.exe cmdshortcut "~$folder.desktop$" "800x600x24" setdisplay 800 600 24
|
Copy all shortcuts on your desktop to another folder (f:\temp\desktop).
|
nircmd.exe execmd copy "~$folder.desktop$\*.lnk" f:\temp\desktop
|
Restart your Apache server (under Windows NT/2000/XP/2003)
|
nircmd.exe service restart apache
|
Create a shortcut on your desktop that restarts the Apache server
|
nircmd.exe cmdshortcut "~$folder.desktop$" "Restart Apache" service restart apache
|
Restart your IIS
|
nircmd.exe service restart w3svc
|
Restart MySql
|
nircmd.exe service restart MySql
|
Open the desired Registry key/value in RegEdit
|
nircmd.exe regedit "HKLM\Software\Microsoft\Windows\CurrentVersion" "CommonFilesDir"
|
Open the Registry key that you copied to the clipboard in RegEdit.
|
nircmd regedit "~$clipboard$"
|
Disable the screen saver
|
nircmd.exe regsetval sz "HKCU\control panel\desktop" "ScreenSaveActive" 0
|
Enable the screen saver
|
nircmd.exe regsetval sz "HKCU\control panel\desktop" "ScreenSaveActive" 1
|
Change the date/time of the specified filename (creation time and modified time)
|
nircmd.exe setfiletime "c:\temp\myfile.txt" "24-06-2003 17:57:11" "22-11-2005 10:21:56"
|
Copy your desktop folder path to the clipboard
|
nircmd.exe clipboard set ~$folder.desktop$
|
Copy your start menu folder path to the clipboard
|
nircmd.exe clipboard set ~$folder.start_menu$
|
Copy the content of info1.txt (simple text file) to the clipboard
|
nircmd.exe clipboard readfile "c:\My Files\info1.txt"
|
Add the text content of clipboard to info1.txt
|
nircmd.exe clipboard addfile "c:\My Files\info1.txt"
|
Clear the clipboard
|
nircmd.exe clipboard clear
|
Create all folders specified in "c:\temp\folders.txt". The folder path names are
separated by CRLF characters.
|
nircmd.exe paramsfile "c:\temp\folders.txt" "" "" execmd md ~$fparam.1$
|
Install the specified .NET assembly in the global assembly cache (like gacutil)
|
nircmd.exe gac install "C:\temp\MyAssembly\bin\MyAssembly.dll"
|
Empty the recycle bin in all drives.
|
nircmd.exe emptybin
|
Answer 'Yes' to a standard Windows message-box.
|
nircmd.exe dlg "" "" click yes
|
Wait 2 seconds, and then save the current screen to shot.png
|
nircmd.exe cmdwait 2000 savescreenshot "f:\temp\shot.png"
|
Save 10 screenshots in a loop, and wait 60 seconds between the screenshot save calls.
The filenames of the screenshot will contain the time and date of the saved screenshot.
|
nircmd.exe loop 10 60000 savescreenshot c:\temp\scr~$currdate.MM_dd_yyyy$-~$currtime.HH_mm_ss$.png
|
Wait until Firefox is closed, and then say "Firefox was closed"
|
nircmd.exe waitprocess firefox.exe speak text "Firefox was closed"
|
Run RegEdit with SYSTEM user (On Windows 7/8/Vista/2008), which allows you to view all hidden system Registry keys
|
nircmd.exe elevatecmd runassystem c:\windows\regedit.exe
|
System Requirements
This utility can work in all versions of Windows operating system: Windows 9x/ME,
Windows NT, Windows 2000, Windows XP, Windows Server 2003, Windows Vista, Windows Server 2008, Windows 7, Windows 8, and Windows 10.
Versions History
23/04/2024 | 2.87 |
- Added ~$folder.localappdata$ variable.
- Fixed the ~$folder.common_programfiles$ variable to use the correct folder (In previous versions it was identical to ~$folder.programfiles$ )
| 01/08/2019 | 2.86 |
- Fixed bug: elevate and other commands failed to work properly when there were many parameters after the command.
| 23/06/2019 | 2.85 |
- The runinteractive and runinteractivecmd commands now work properly even if you don't run them from a Windows service.
- Fixed bug: The behvaiour of consolewrite command was unexpected when there was '%' character.
| 22/04/2019 | 2.84 |
- Fixed to work again on Windows 98/2000.
| 19/04/2019 | 2.83 |
- Added runinteractive and runinteractivecmd commands, which allows you to run a process or NirCmd command that accesses the GUI from a Windows service.
- For example, if you try to use the savescreenshot command from a Windows service, you'll get a black image, because NirCmd cannot access the user interface from a Windows service.
- You can solve this problem with runinteractivecmd command: nircmd.exe runinteractivecmd savescreenshot "c:\temp\screenshot1.png"
- Be aware that runinteractive and runinteractivecmd commands only work from a Windows service ('SYSTEM' user).
| 22/03/2019 | 2.82 |
- Fixed the savescreenshot or savescreenshotfull commands to work properly with DPI scaling.
| 23/05/2016 | 2.81 |
- Fixed bug: NirCmd failed to execute the cmdwait, loop and a few other commands after qboxcom and qboxcomtop commands.
| 30/01/2016 | 2.80 |
- Fixed bug: clipboard readfile failed to read the last character of Ascii file.
- Added writeufile and addufile to clipboard command, for writing files in Unicode.
- Fixed the restartexplorer command to work properly on Windows 10.
| 10/08/2013 | 2.75 |
- Added new commands: moverecyclebin, suspendprocess , resumeprocess.
- Added etitle option to the find parameter of win command.
- 'clipboard readfile' command now reads Unicode files (UTF-8 and UTF-16).
| 29/10/2012 | 2.71 |
- Added runassystem command, which allows you to run a process with SYSTEM user (Works on Windows 7/8/Vista/2008)
| 12/09/2012 | 2.70 |
- Added new option to speak command: You can now save the entire speach into a .wav file that can be played with any
media player (Instead of playing it directly to your sound card).
- Added restartexplorer command, which simply restarts Windows Explorer gracefully.
- Added screensavertimeout command, which allows you to set the screensaver timeout, in seconds.
- Added togglemax, togglemin, togglehide, toggledisable actions to win command.
- Added SystemSounds support for setappvolume, changeappvolume, and muteappvolume commands.
- Fixed issue on Windows 7: 'win close alltopnodesktop' command caused a shutdown dialog-box to appear.
- Fixed the setprimarydisplay to work properly.
| 28/06/2011 | 2.65 |
- Added setdefaultsounddevice command (for Windows 7/Vista/2008 only), which
allows you to set the default sound device.
- Added setsubunitvolumedb command (for Windows 7/Vista/2008 only), which
allows you to set the volume of sound device subunits (Line In, Microphone, and so on)
- Added mutesubunitvolume command (for Windows 7/Vista/2008 only), which
allows you to mute/unmute the volume of sound device subunits (Line In, Microphone, and so on)
| 21/06/2011 | 2.60 |
- Added mediaplay command for playing audio file (.mp3, .wav, and so on) for the
specified number of milliseconds.
- Added changebrightness and setbrightness commands for setting the
screen brightness on laptops and netbook computers.
| 08/06/2011 | 2.55 |
- On savescreenshot, savescreenshotfull, and savescreenshotwin commands,
you can now specify *clipboard* as a filename, in order to save the screenshow into the clipboard
- On savescreenshot command, you can now specify a rectangle to capture as x, y, width, and height instead of
capturing the entire screen.
- Fixed savescreenshotfull command to work properly on multiple screen system with negative coordinates.
| 27/03/2011 | 2.52 |
- Added 'runas' command, which allows you to run a new process with the specified user name/password.
- Added 'Flash' action to the win command, with allows you to flash the specified window.
| 13/03/2011 | 2.51 |
- Added 'focused' option for setappvolume, changeappvolume, and muteappvolume commands, which allow you to easily
change the volume of the application that is currently in focus, on Windows 7/Vista/2008.
- Added 'default_record' option for
setsysvolume, changesysvolume, setsysvolume2, changesysvolume2, and mutesysvolume commands, which allows you set easily
change the volume of default recording device, on Windows 7/Vista/2008.
| 24/02/2011 | 2.50 |
- Added 3 new sound volume commands to change or mute application volume on Windows 7/Vista/2008:
setappvolume, changeappvolume, muteappvolume
- Added new information command that shows you a message box with all sound devices on your Windows 7/Vista/2008 system:
showsounddevices.
| 22/02/2011 | 2.48 |
- Fixed the problems with the timeout of the tray balloon in trayballoon command.
| 20/01/2011 | 2.47 |
- Fixed bug: The sendkeypress command didn't work properly with Fxx keys (F1, F2, and so on).
| 28/11/2010 | 2.46 |
- Added option to locate window by process in win command.
- Added max and min options (Minimized and maximized windows) into exec and exec2 commands.
- Added x64 builds of nircmd.exe and nircmdc.exe
| 18/10/2010 | 2.45 |
- Added trayballoon command - displays a tray balloon with your desired text and icon.
- Added sendkeypress command - Alternative to the sendkey command. Allows you to send key press
combination in much easier way, for example: sendkeypress ctrl+shift+esc
- Added clonefiletime command to clone the date/time of existing file into one or more files.
- Added setconsolemode command to set the console display mode - window or full screen.
- Added setconsolecolor command to set the foreground and background colors of the console text.
- Added consolewrite command to write text into the console window.
- Added debugwrite for writing text into the debug output.
- Added ~$folder.mydocuments$ variable.
| 21/02/2010 | 2.41 |
- Fixed a bug in elevate command: when running a program without parameters, NirCmd sent the elevate command string as a parameter of the program.
| 16/02/2010 | 2.40 |
- Added elevate and elevatecmd commands to run and execute commands with administrator rights under Windows 7/Vista/2008.
- Added monitor parameter to setdisplay command, for using it with multiple monitors.
- Added setprimarydisplay command.
- Added folder.programfiles and folder.common_programfiles variables.
- Added async_off, async_on, async_low for monitor command. You can try them if NirCmd.exe remains in memory
when you use monitor on/off command.
| 26/05/2009 | 2.37 |
- Improved the help .chm file - Now it contains a link to every command.
- Added help command - Automatically opens the reference of the desired command in http://nircmd.nirsoft.net.
For example, if you type 'nircmd.exe help speak', the reference page of speak command - http://nircmd.nirsoft.net/speak.html will be opened in your default browser.
| 19/05/2009 | 2.36 |
- Fixed bug in script: Sometimes the last line in the script was not executed properly.
| 20/04/2009 | 2.35 |
- Added loop command - execute a command multiple times.
- Added currtime and currdate variables.
- waitprocess - Added option to execute a NirCmd command after the process was closed.
- Added rem (or ;) command, just for adding remarks in a script.
| 01/04/2009 | 2.30 |
- Added speak command - Speaks the contents of the text or file that you specify, by using the Speech library (SAPI) that comes with Windows XP and Windows Vista.
- Added savescreenshotfull command.
| 02/02/2009 | 2.25 |
- New actions for clipboard command - loadclp and saveclp (load/save in Windows .clp format)
- New command: setprocessaffinity
| 01/01/2009 | 2.20 |
- New commands: waitprocess, setprocesspriority, qboxtop, qboxcomtop.
- New action in clipboard command: copyimage (Copy image file to the clipboard)
| 25/06/2008 | 2.15 |
- New commands: setcursorwin, savescreenshotwin, filldelete
| 12/04/2008 | 2.10 |
- New commands: shellcopy, savescreenshot
| 09/02/2008 | 2.05 |
- New commands: shellrefresh, convertimage, convertimages
- New option in clipboard command - saveimage
| 16/06/2007 | 2.00 |
- All sound volume commands and monitor command now works under Vista.
- New commands: dlg, dlgany, sendkey, sendmouse, returnval
- New actions in win command - dlgclick, dlgsettext, dlgsetfocus
| 24/07/2006 | 1.85 |
- New command: cmdshortcutkey
| 15/07/2006 | 1.84 |
- Starting from this version, if you don't specify a sound device index in setsysvolume, changesysvolume, setsysvolume2, changesysvolume2 and mutesysvolume commands,
the default sound device in control panel ("preferred device") is used.
- New find options in win command: active, foreground, desktop
| 20/05/2006 | 1.83 |
- Fixed bug with parameter variables: parameter dialog-box appear more than once.
- New find option in Win command: alltopnodesktop
| 18/02/2006 | 1.82 |
- New win actions: postmsg and sendmsg.
- New command: closeprocess
- NirCmd now returns a non-zero value on error.
| 19/11/2005 | 1.81 |
- New command: emptybin - Empty the Recycle Bin.
- New optional parameter in setdisplay command: refresh rate.
- rashangup command without parameter - disconnect all active connections.
| 24/09/2005 | 1.80 |
- New commands: exec2, cmdwait.
- New options in clipboard command.
- Volume commands (setsysvolume, changesysvolume, setsysvolume2, changesysvolume2, mutesysvolume) now allows you to change the volume of non-default sound card.
| 07/07/2005 | 1.70 |
- New win actions: activate, hideshow, +style, -style, +exstyle, -exstyle
- New commands: movecursor, setcursor.
- New command: setfilefoldertime - allows you to change the date/time of folders, under Windows 2000/XP only.
| 10/06/2005 | 1.62 |
- New actions in win command: focus, enable, disable
| 26/05/2005 | 1.61 |
- new command: sysrefresh - make a general system refresh after modifying your system settings in the Registry.
| 07/05/2005 | 1.60 |
- New paramsfile command: Allows you to execute a command multiple times by loading the parameters from a text file.
- New actions in win command: move, center, settext.
- New 'child' action in win command: Allows you to move/hide child windows (For example: the start button in the system tray)
- New clipboard command: Allows you to put a string in the clipboard, and clear the clipboard.
- New gac command: Allows you to install assemblies in Global Assembly Cache.
| 28/12/2004 | 1.56 |
- New variable: ~$clipboard$ - paste the text that you copied to the clipboard into the command-line.
- Parameter variables: ~$param.ParamName$ - Display an input window for typing the text that you want insert into the command-line.
| 07/12/2004 | 1.55 |
Added RegEdit command.
| 18/11/2004 | 1.54 |
- On reg commands (regsetval, regdelval, regdelkey), you can now also use the following
abbreviated key name: HKCU for HKEY_CURRENT_USER, HKLM for HKEY_LOCAL_MACHINE, HKCR for HKEY_CLASSES_ROOT, HKU for HKEY_USERS,
HKCC for HKEY_CURRENT_CONFIG.
- redraw action for win command.
| 03/11/2004 | 1.53 |
Fixed 'monitor off' problem in XP SP2.
| 09/10/2004 | 1.52 |
rasapi32.dll is now loaded only when using the dial commands (rasdial, rasdialdlg, rashangup).
In previous versions, NirCmd was statically linked to rasapi32.dll, and that caused problems in old NT systems.
| 29/09/2004 | 1.51 |
Variable names are now enclosed with '$' char instead of '%' char.
I made this change because the '%' char causes problems when running NirCmd from cmd/bat file.
using the '%' char for variable names is still supported for backward compatibility.
| 22/09/2004 | 1.50 |
- New commands: cmdshortcut, regsvr, mutesysvolume, changesysvolume, changesysvolume2, setsysvolume2.
- New actions in win command: trans, setsize, settopmost, ititle.
- New variables: folder.nircmd, nir.exefile
- nircmdc.exe - console version of NirCmd.
- Changed name - from NirComLime to NirCmd.
| 05/05/2004 | 1.40 |
- New commands: wait, setvolume, setsysvolume, execmd, exec.
- New commands for executing NirCmd on remote machines: remote and multiremote.
- Folder and system variables.
- New option in setfiletime command - set the file time to the current time (now parameter)
- New parameter in shortcut command - hot key.
| 01/03/2004 | 1.30 |
- New commands: qboxcom, beep, stdbeep, cdrom, urlshortcut, monitor, screensaver, standby, and hibernate.
- Fixed the bug with ~x string sequences.
| 08/01/2004 | 1.20 |
- New commands: setdialuplogon, script
- Special string sequences (~q, ~t, ~n and so on) to allow you to embed quotes and new line characters into the parameters of any command.
| 19/11/2003 | 1.11 |
New options in shortcut command
| 10/10/2003 | 1.10 |
New commands: killprocess, service, memdump, win, lockws.
| 09/09/2003 | 1.00 |
First release.
|
License
This utility is released as freeware.
You are allowed to freely distribute this utility via floppy disk, CD-ROM,
Internet, or in any other way, as long as you don't charge anything for this.
If you distribute this utility, you must include all files in
the distribution package, without any modification !
|
|
|