NirCmd是一套免费的命令列指令,提供许多控制Windows的参数。让你运用命令列的方式,来执行一些常用的动作,例如开启或关闭光驱,增加或减少计算机音量。让你在执行一些常用的动作时,可以更加的有效率。
官网:http://www.nirsoft.net/utils/nircmd.html
网上下载的翻译文档
NirCmdv2.20
Copyright (c) 2003 - 2008 Nir Sofer
帮助文档中文译本
By lhjoanna
简述:
NirCmd是一款命令行使用小工具,通过它可以完成很多实用的任务,而不用显示任何用户界面。通过添加一些非常简单的命令选项,你可以完成:写入、删除注册表项、值,写入ini文件,拨号连接到你的网络账户以及VPN网络,重启、关闭计算机,创建文件快捷方式,改变文件的创建/修改日期,改变显示设置,关闭显示器,弹出光驱,以及更多....
你可以用NirCmd做什么:
弹出盘符为J的光驱 | NirCmd.exe cdrom open j: |
弹入盘符为Y的光驱 | nircmd.exe cdrom close y: |
增加2000个单位的系统音量(最大65535) | nircmd.exe changesysvolume 2000 |
降低5000个单位的系统音量(最大65535) | nircmd.exe changesysvolume -5000 |
设置为最高音量 | nircmd.exe setsysvolume 65535 |
设置为静音 | nircmd.exe mutesysvolume 1 |
取消静音 | nircmd.exe mutesysvolume 0 |
在静音与正常状态之间切换 | nircmd.exe mutesysvolume 2 |
在桌面创建静音与正常状态切换命令的快捷方式 | nircmd.exe cmdshortcut "~$folder.desktop$" "Switch Volume" mutesysvolume 2 |
关闭显示器 | nircmd.exe monitor off |
启动默认屏保 | nircmd.exe screensaver |
进入待机状态 | nircmd.exe standby |
注销当前用户 | nircmd.exe exitwin logoff |
弹出对话框,询问是否重启。选择是则重启电脑 | nircmd.exe qboxcom "Do you want to reboot?" "question" exitwin reboot |
关闭computers.txt中指定的所有计算机 | multiremote copy "c:\temp\computers.txt" exitwin poweroff force |
拨号连接到"My Internet" | nircmd.exe rashangup "My Internet" |
设置IE窗口为75%透明度(192/256) | nircmd.exe win trans ititle "internet explorer" 192 |
最小化所有的IE窗口 | nircmd.exe win min class "IEFrame" |
关闭所有的IE窗口 | nircmd.exe win close class "IEFrame" |
关闭所有的资源管理器窗口(我的电脑、文件夹等) | nircmd.exe win close class "CabinetWClass" |
隐藏所有的IE窗口 | nircmd.exe win hide class "IEFrame" |
显示所有的IE窗口(在用上面命令隐藏后) | nircmd.exe win show class "IEFrame" |
把所有的顶级窗口居中 | nircmd.exe win center alltop |
去掉我的电脑窗口的标题栏 | nircmd.exe win -style title "my computer" 0x00C0000 |
恢复我的电脑窗口的标题栏(当用上面命令去除后) | nircmd.exe win +style title "my computer" 0x00C0000 |
设置我的电脑窗口为从右至左的顺序(适用于希伯来语和阿拉伯语) | nircmd.exe win +exstyle title "my computer" 0x00400000 |
设置我的电脑窗口的所有子窗口为从右至左的顺序(适用同上) | nircmd.exe win child title "my computer" +exstyle all 0x00400000 |
在桌面创建可以关闭所有IE窗口的快捷方式 | nircmd.exe cmdshortcut " "~$folder.desktop$ "Close All IE" win close class "IEFrame" |
在桌面创建可以隐藏所有IE窗口的快捷方式 | nircmd.exe cmdshortcut " "~$folder.desktop$ "Hide All IE" win hide class "IEFrame" |
在桌面创建可以再次显示所有IE窗口的快捷方式 | nircmd.exe cmdshortcut " "~$folder.desktop$ "Show All IE" win show class "IEFrame" |
把calculator窗口设置为最上层窗口(在其他窗口之上) | nircmd.exe win settopmost title "Calculator" 1 |
恢复calculator窗口为原始窗口状态(不处于最上层) | nircmd.exe win settopmost title "Calculator" 0 |
创建calc.exe快捷方式到开始菜单->程序->Calculators | nircmd.exe shortcut "f:\winnt\system32\calc.exe" "~$folder.programs$\Calculators" "Windows Calculator" |
隐藏桌面所有图标 | nircmd.exe win hide class progman |
显示桌面所有图标(用以上命令隐藏过后) | nircmd.exe win show class progman |
隐藏系统开始按钮 | nircmd.exe win child class "Shell_TrayWnd" hide class "button" |
显示系统开始按钮 | nircmd.exe win child class "Shell_TrayWnd" show class "button" |
隐藏系统时间 | nircmd.exe win child class "Shell_TrayWnd" hide class "TrayClockWClass" |
显示系统时间 | nircmd.exe win child class "Shell_TrayWnd" show class "TrayClockWClass" |
终止所有IE实例 | nircmd.exe killprocess iexplore.exe |
创建桌面快捷方式,运行即可弹出光驱(K盘) | nircmd.exe cmdshortcut "~$folder.desktop$" "Open CDROM" cdrom open k: |
将nirsoft网址创建到桌面快捷方式 | nircmd.exe urlshortcut "http://www.nirsoft.net" "~$folder.desktop$" "NirSoft" |
添加nirsoft网址到收藏夹\链接下 | nircmd.exe urlshortcut "http://www.nirsoft.net" "~$folder.favorites$\Links" "NirSoft" |
将nirsoft网址快捷方式创建到computers.txt中列出的所有计算机的桌面 | nircmd.exe multiremote copy "c:\temp\computers.txt" urlshortcut "http://www.nirsoft.net" "~$folder.common_desktop$" "NirSoft" |
设置显示模式为800X600,24位色 | nircmd.exe setdisplay 800 600 24 |
将设置显示模式为800X600,24位色命令创建为桌面快捷方式 | nircmd.exe cmdshortcut "~$folder.desktop$" "800x600x24" setdisplay 800 600 24 |
复制所有桌面快捷方式到其他文件夹(f:\temp\desktop) | nircmd.exe execmd copy "~$folder.desktop$\*.lnk" f:\temp\desktop |
重启你的Apache server服务器(windows NT/2000/XP/2003) | nircmd.exe service restart apache |
将重启Apache server服务器命令创建为桌面快捷方式 | nircmd.exe cmdshortcut "~$folder.desktop$" "Restart Apache" service restart apache |
重启IIS(互联网信息服务) | nircmd.exe service restart w3svc |
重启MySql | nircmd.exe service restart MySql |
打开指定注册表项/值 | nircmd.exe regedit "HKLM\Software\Microsoft\Windows\CurrentVersion" "CommonFilesDir" |
打开你在注册表编辑器中复制到剪切板的注册表项 | nircmd regedit "~$clipboard$" |
禁用屏保 | nircmd.exe regsetval sz "HKCU\control panel\desktop" "ScreenSaveActive" 0 |
取消禁用屏保 | nircmd.exe regsetval sz "HKCU\control panel\desktop" "ScreenSaveActive" 1 |
改变指定文件的日期/时间(创建时间和修改时间) | nircmd.exe setfiletime "c:\temp\myfile.txt" "24-06-2003 17:57:11" "22-11-2005 10:21:56" |
复制桌面所在路径到剪切板 | nircmd.exe clipboard set ~$folder.desktop$ |
复制开始菜单文件夹路径到剪切板 | nircmd.exe clipboard set ~$folder.start_menu$ |
复制文本info1.txt中的内容到剪切板 | nircmd.exe clipboard readfile "c:\My Files\info1.txt" |
将剪切板中内容添加到文本info1.txt中 | nircmd.exe clipboard addfile "c:\My Files\info1.txt" |
清空剪切板 | nircmd.exe clipboard clear |
创建所有在"c:\temp\folders.txt"中指定的文件夹,文件夹路径名用回车符隔开 | nircmd.exe paramsfile "c:\temp\folders.txt" "" "" execmd md ~$fparam.1$ |
安装所有在全局程序集缓存(GAC)中指定的.NET程序集 | nircmd.exe gac install "C:\temp\MyAssembly\bin\MyAssembly.dll" |
清空所有磁盘上的回收站 | nircmd.exe emptybin |
对一个标准的Windows信息框回复确认 | nircmd.exe dlg "" "" click yes |
延迟2秒钟,然后保存当前屏幕截图到shot.png | nircmd.exe cmdwait 2000 savescreenshot "f:\temp\shot.png" |
许可:
这是一款免费软件。只要不从此中收取费用,你就可以自由的通过软盘,CD,网络或者其他方法发布。注意在发布时应包含此发布包内的所有文件,不得有任何修改。
使用NirCmd:
这款软件是一个独立的可执行程序,不需要任何的安装过程或者额外的dll文件支持。只需要把exe文件复制到任何指定的文件夹,并且根据你的需要添加你需要的命令选项运行即可。推荐复制NirCmd.exe到Windows目录,或者复制到任何系统中path环境变量中所列出的路径下,这样你就不需要在每次运行时输入NirCmd的完整路径。
从版本1.50开始,NirCmd的也可以在控制台中使用,在控制台版本中,所有的错误信息都会显示在控制台窗口中,而不是出现在信息框中。
NirCmd的一般语法:
nircmd.exe {showerror}[command][commandparameters]
showerror是可选参数。如果你指定了此参数,那么在命令运行过程中如果发生错误,错误信息会显示在屏幕上。否则,会忽略所有错误。例:
nircmd.exe showerror rasdial "dial1"
nircmd.exe rasdial "dial1"
在上面的两个例子中,NirCmd会尝试连接diall入口,在第一个例子中,如果连接失败,将会显示一条有关此问题的错误信息。在第二个例子中,如果连接失败则不会显示错误信息。
特殊的字符串序列:
从版本1.20开始,NirCmd允许你在命令参数中插入特殊的字符。下表列出了你可以使用的特殊字符串序列:
Sequence | Description |
~n | 换行(包含换行符和回车符) |
~q | 双引号 " |
~t | 制表符 Tab键 |
~xnn | 用一个包含两位十六进制数字的ASCII来代表任何字符。例如:~x41 (字符'A'), ~x27 (单引号) |
~$variable$ | 代表系统变量,更多信息请看下面。 |
~~ | 代表单个~字符 |
例:
NirCmd infobox "This is the first line~n~qThis isa second line, in quotes~q" "Example"
上面的例子会显示一个包含两行的信息框。
系统变量:
从1.40版本开始,NirCmd提供了特殊字符代表文件夹以及其他系统变量。每个变量都以字符~开头,后面的变量名包含在两个$内。例:~$folder.desktop$就代表了系统桌面这个文件夹的路径。(可以用nircmd infobox"~$folder.desktop"来查看)。下表就指定了你可以使用的一些变量:
变量名 | 描述 |
clipboard | 代表你复制到剪切板的文本内容 |
param.paramname | 当你指定一个param变量时,屏幕上会显示一个输入窗口,要求你为指定的参数输入文本(可以理解为给参数赋值),你所输入的文本会被插入到命令行中。 |
例:在下面的命令中,会要求你输入2个参数(1和2),你所输入的文本会显示在信息框中。 | |
nircmd infobox ~$param.1$ ~$param.2$ | |
fparam.number | 从指定的文本中加载指定的参数,更多信息请参考命令paramsfile |
sys.varname | 可以使用此选项来表示系统上的任何环境变量。 |
例: | |
~$sys.username$, ~$sys.windir$, ~$sys.computername$, ~$sys.logonserver$, ~$sys.temp$, 等等 | |
nir.exefile | 当前运行的NirCmd的完整路径(如: c:\winnt\nircmd.exe) |
folder.nircmd | NirCmd所在的文件夹(路径) |
folder.desktop | 用户桌面(路径) |
folder.start_menu | 用户开始菜单文件夹(路径) |
folder.programs | 用户开始菜单\程序文件夹(路径) |
folder.startup | 用户开始菜单\程序\启动文件夹(路径) |
folder.recent | 我最近的文档(路径) |
folder.favorites | 用户收藏夹(路径) |
folder.cookies | cookies文件夹(路径) |
folder.appdata | Application Data文件夹(路径) |
folder.common_desktop | All user\桌面文件夹(路径) |
folder.common_start_menu | ALL user\开始菜单文件夹(路径) |
folder.common_programs | ALL user\开始菜单\程序文件夹(路径) |
folder.common_startup | ALL user\开始菜单\程序\启动文件夹(路径) |
folder.common_favorites | ALL user\Favorites文件夹(路径) |
folder.windows | Windows文件夹(路径) |
folder.system | 系统文件夹(路径) |
举例:
1、 创建开始菜单\程序文件夹的快捷方式:
NirCmd shortcut"c:\winnt\system32\calc.exe" "~$folder.programs$\MyPrograms" "Calculator"
2、 删除用户桌面的某个快捷方式:
NirCmd execmd del "~$folder.desktop$\calc.lnk"
3、 显示当前已登录的用户:
NirCmd infobox "The current logged-on user is ~$sys.username$""logged-on user"
在远程计算机上执行NirCmd命令:
从1.40版本开始,可以在远程计算机上执行NirCmd命令。但是,你应该注意以下的一些限制和问题:
1、此选项只可用于Windows NT,Windows 2000和Windows XP。不可以在Windows 9X下使用。
2、必须以管理员身份登陆远程计算机。
3、远程计算机上的任务计划(Task Schedule)服务必须开启。(默认所有的NT/2000/XP计算机都自动开启此服务,所以不用担心这点。)
4、由于任务计划服务的一些限制,你必须等待60秒命令才可以在远程计算机上执行。
5、远程计算机上的命令是在system账户下执行,因此某些同样的命令在本地执行可能会有所区别。
这是两条在用于远程计算机上执行的NirCmd命令:
remote 用于在一台远程计算机上执行命令
multiremote 用于在多台远程计算机上执行命令
NirCmd 命令:
命令 | |
remote | remote {copy} [\\computer] [NirCmd command] |
在远程计算机上执行NirCmd命令。如果指定了{copy}参数,NirCmd将会复制自身到远程计算机的Windows目录下。如果远程计算机的Windows目录下不存在NirCmd.exe,则必须指定{copy}参数。 | |
例: | |
remote copy \\comp1 exitwin poweroff | |
remote \\comp2 infobox "This is a message from NirCmd" "Hello !" | |
multiremote | multiremote {copy} [computers file] [NirCmd command] |
在多台远程计算机上执行NirCmd命令。如果指定了{copy}参数,NirCmd将会复制自身到远程计算机的Windows目录下。如果远程计算机的Windows目录下不存在NirCmd.exe,则必须指定{copy}参数。 | |
参数[computers file]指定一个文件,此文件包含了以回车符分隔的计算机列表。 | |
文件[computers file]举例: | |
\\comp1 | |
\\comp2 | |
\\winxp1 | |
\\winxp2 | |
\\nirsoft | |
在参数[NirCmd command]中指定的命令会在所有[computers file]指定的计算机上运行。 | |
例: | |
关闭所有在computers.txt中列出的计算机 | |
multiremote "c:\temp\computers.txt" exitwin poweroff force | |
锁定所有在computers.txt中列出的计算机 | |
multiremote "c:\temp\computers.txt" lockws | |
复制NirCmd.exe到所有computers.txt中列出的计算机上,并且关闭其显示器。 | |
multiremote copy "c:\temp\computers.txt" monitor off | |
复制NirCmd.exe到所有computers.txt中列出的计算机上,运行wul.exe(WinUpdatesList),以便保存所有计算机上的Windows更新信息。 | |
multiremote copy "c:\temp\computers.txt" exec hide c:\temp\wul.exe /shtml "c:\temp\wul_~$sys.computername$.html" | |
cmdwait [Number of Milliseconds] [NirCmd Command] | |
等待指定的毫秒数,然后执行指定的NirCmd命令。 | |
例: | |
cmdwait 1000 monitor off | |
paramsfile [Parameters File] [Delimiters] [Quote Character] [NirCmd Command] | |
这是一个很强大的命令,它允许你从一个文本文件中加载一个或多个参数,从而可以成倍的执行NirCmd命令。此文本文件内容可以以逗号、Tab、分号或者任何你在参数[Delimiters]中指定的符号作为分隔符。 | |
举一个例子:假设有如下文本文件,包含了一些用户名和密码,以','隔开: | |
user01, 123456 | |
user02, abcfg | |
user03, 5fr23 | |
user04, 33333 | |
下面的NirCmd命令将会创建在以上文本文件中指定的4个用户名和密码。(通过使用Windows 2000/XP操作系统提供的net user命令) | |
nircmd.exe paramsfile "c:\temp\users.txt" "," "" execmd net user ~$fparam.1$ ~$fparam.2$ /add | |
~$fparam.1$指每行的第一个词条,即用户名。 ~$fparam.2$指每行的第二个词条,即密码。 | |
例: | |
paramsfile "c:\temp\folders.txt" "" "" execmd md ~$fparam.1$ | |
paramsfile "c:\temp\shortcuts.txt" "," "~q" shortcut ~$fparam.1$ "~$folder.desktop$" ~$fparam.2$ | |
infobox | infobox [message text] [title] |
在屏幕上显示一个简单的信息框。 | |
例: | |
infobox "This is a message box !" "message" | |
qbox | qbox [message text] [title] [program to run] |
在屏幕上显示一个询问对话框。如果用户回答是,则运行程序。 | |
例: | |
qbox "Do you want to run the calculator ?" "question" "calc.exe" | |
qboxtop | qboxtop [message text] [title] [program to run] |
同qbox命令类似,但显示的对话框为最上层窗口。 | |
qboxcom | qboxcom [message text] [title] [NirCmd Command] |
在屏幕上显示一个询问对话框。如果用户回答是,则执行参数[NirCmd Command]中指定的NirCmd命令。 | |
例: | |
qboxcom "Do you want to lock your workstation ?" "question" lockws | |
qboxcom "Do you want to turn off the monitor ?" "monitor" monitor off | |
qboxcomtop | qboxcomtop [message text] [title] [NirCmd Command] |
同qboxcom命令类似,但现实的对话框为最上层窗口。 | |
script | script [Script File] |
此命令允许你运行包含在一个脚本文件中的一系列命令,此脚本文件由参数[Script File]指定。 | |
例e: | |
script "c:\temp\msg.ncl" | |
脚本文件样例: | |
infobox "Hello !" "This is the first message" | |
infobox "Hello !" "This is the second message" | |
infobox "Hello !" "This is the third message" | |
| |
regedit | regedit [key] [value name] |
打开注册表编辑器的指定项/值。 | |
例: | |
regedit "HKLM\Software\Microsoft\Windows\CurrentVersion" "CommonFilesDir" | |
regedit "HKEY_CURRENT_USER\Control Panel\Desktop" "Wallpaper" | |
regsetval | regsetval [type] [key] [value name] [value] |
把值写入注册表。参数[type]可以为:"sz"或"expand_sz" 指字符串;"dword" 指32位数字;"binary" 指二进制数据。如果你在参数[key]中指定的项在注册表中不存在,则会自动创建此项。 | |
例: | |
regsetval dword "HKEY_CURRENT_USER\Software\Test" "Value1" "0xaabbccdd" | |
regsetval dword "HKCU\Software\Test" "Value2" "10561" | |
regsetval sz "HKCU\Software\Test" "Value3" "string value" | |
regsetval binary "HKLM\Software\Test" "Value4" "6a cb ab dd 80 86 95" | |
regdelval | regdelval [key] [value] |
删除注册表中的某个值 | |
例: | |
regdelval "HKEY_CURRENT_USER\Software\Test" "Value1" | |
regdelkey | regdelkey [key] |
删除注册表中的整项。如果指定的项有一个或多个子项时,此命令失效。 | |
例: | |
regdelkey "HKEY_CURRENT_USER\Software\Test" | |
inisetval | inisetval [INI filename] [section] [key] [value] |
把值写入ini文件。如果文件不存在,则自动创建。 | |
例: | |
inisetval "c:\windows\test.ini" "section1" "TestValue" "1" | |
inidelval | inidelval [INI filename] [section] [key] |
删除ini文件中的一对项-值。 | |
例: | |
inidelval "c:\windows\test.ini" "section1" "TestValue" | |
inidelsec | inidelval [INI filename] [section] |
删除ini文件的整段(以[]分段),且删除此段中包含的所有值。 | |
例: | |
inidelsec "c:\windows\test.ini" "section1" | |
regsvr | regsvr [reg or unreg] [filename or wildcard] {log file} |
注册或解除注册DLL/OCX文件。 | |
在第一个参数[reg or unreg]中,指定"reg"表示注册文件,指定"unreg"表示解除注册文件。 | |
在第二个参数[filename or wildcard]中,你可以指定要注册或解除注册的某个单一文件,多个文件用通配符指定。 | |
第三个为可选参数,指定一个日志文件来保存注册操作的结果。 | |
例: | |
regsvr reg "f:\winnt\system32\fv*.ocx" "c:\temp\log1.txt" | |
regsvr unreg "f:\winnt\system32\ab*.dll" | |
rasdial | rasdial [Entry Name] {Phonebook File} {User Name} {Password} {Domain} |
不显示任何用户界面,建立拨号连接到RAS服务接口(VPN网络或电话线)。除了参数[Entry Name]为必需,其他参数都为可选参数。如果没有指定可选参数,或者指定为空字符串(""),将会使用默认值。 | |
例: | |
rasdial "My Internet" | |
rasdial "VPN1" "" "user1" "abc1234" "domain1" | |
inetdial | inetdial [Entry Name] |
建立拨号连接到RAS服务接口(VPN网络或电话线),显示拨号进程的信息对话框。 | |
此命令只适用于IE版本4.0及其以上。注意:此命令在旧版本的Windows 98上可能无效。 | |
例: | |
inetdial "VPN1" | |
rasdialdlg | rasdialdlg [Entry Name] {Phonebook File} {Phone Number or IP Address} |
显示用于拨号连接的RAS服务接口。参数{Phonebook File}和{Phone Number}为可选参数。如果没有指定参数{Phonebook File}或者指定为空字符串(""),则使用默认电话簿。 | |
此命令只适用于Windows NT,Windows 2000和Windows XP。不支持Windows 98/ME。 | |
例: | |
rasdialdlg "Internet1" "" "9876543" | |
rasdialdlg "VPN1" | |
rashangup | rashangup {Entry Name} |
中断RAS连接。你可以用此命令来中止之前用命令inetdial或者rasdial创建的连接。如果没有指定参数{Entry Name},所有的活动连接都将被终止。 | |
例: | |
rashangup "VPN1" | |
rashangup | |
setdialuplogon | setdialuplogon [Entry Name] [User Name] {Password} {Domain} {Phonebook File} |
修改拨号连接的用户名、密码、域名。 | |
参数: | |
[Entry Name]: 拨号连接名 | |
[User Name]: 设定拨号连接的用户名 | |
{Password}: 设定拨号连接的密码 | |
{Domain}: 设定拨号连接的域名 | |
{Phonebook File}: 电话簿文件包含了你要修改的拨号连接条目。如果没有指定此参数,将会使用默认电话簿。 | |
例: | |
setdialuplogon "VPN1" "user1" "asder443" "domain1" | |
setdialuplogon "Internet1" "nirs3" "q5r4df7yh5" | |
exitwin | exitwin [shutdown type] {additional option} |
此命令用来关闭当前会话窗口。参数[shutdown type]可以是一下值之一: | |
logoff: 结束所有进程,注销当前用户,显示登录对话框来切换用户 | |
reboot: 关闭系统,重新启动 | |
poweroff: 关闭系统,关闭电源(只对支持此性质的系统有效)。 | |
shutdown: 只关闭系统,不重启,不关电源 | |
还可以使用一下的附加选项: | |
force: 立即强制终止所有应用程序。使用此选项可能会是正在运行的程序丢失数据。建议只在特殊情况下使用! | |
forceifhung: 终止无响应的应用程序。适用于Windows 2000/XP | |
例: | |
exitwin reboot | |
exitwin poweroff force | |
exitwin logoff forceifhung | |
initshutdown | initshutdown {message} {timeout value in seconds} {force} {reboot} |
系统关机。此命令与exitwin命令有些相似,但它具备一些exitwin不支持的操作。此命令不支持Windows 95/98/ME。如果没有指定任何参数,将会在不显示任何信息的情况下立即关闭计算机。 | |
参数: | |
{message}: 指定关机前要显示的信息。 | |
{timeout value in seconds}:指定关机前等待的秒数。 | |
{force}: 不保存当前数据,强制终止所有应用程序。 | |
{reboot}: 关机后重启。 | |
例: | |
initshutdown "shutting down the system within 60 seconds" 60 reboot | |
initshutdown "" 0 force | |
abortshutdown | abortshutdown |
取消用initshutdown命令进行的关机操作,不接受任何参数。 | |
例: | |
abortshutdown | |
lockws | lockws |
锁定计算机。锁定计算机后,必须输入密码来解锁。只适用于Windows 2000/XP。(类似于Win+L) | |
monitor | monitor [action] |
改变显示器状态。参数[action]可以包含下列值: | |
off: 关闭显示器 | |
on:打开显示器 | |
low: 设置为低耗电状态 | |
此命令只适用于支持此性质的系统。 | |
例: | |
monitor off | |
monitor on | |
screensaver | screensaver |
开启默认屏保 | |
standby | standby {force} |
关闭计算机,并处于待机模式。如果指定{force}参数,系统会不经过所有应用程序许可直接进入待机状态,不推荐使用此参数。 | |
适用于支持待机模式的系统 | |
例: | |
standby force | |
standby | |
hibernate | hibernate {force} |
关闭计算机,并处于休眠模式。如果指定{force}参数,系统会不经过所有应用程序许可直接进入休眠状态,不推荐使用此参数。 | |
适用于支持休眠模式的系统 | |
例: | |
hibernate force | |
hibernate | |
shortcut | shortcut [filename] [folder] [shortcut title] {arguments} {icon file} {icon resource number} {ShowCmd} {Start In Folder} {Hot Key} |
创建文件的快捷方式: | |
参数: | |
[filename]: 指定要创建快捷方式的文件 | |
[folder]: 指定快捷方式的创建位置。可以指定任何有效的文件夹,包括一些代表系统文件夹的特殊变量,如:~$folder.programs$ (开始/程序文件夹)等等 | |
[shortcut title]: 此快捷方式的名字 | |
{arguments}:可选参数 - 执行此文件的附加参数。 | |
{icon file}:可选参数 - 如果想使用其他图标来代替默认图标则使用此参数。 | |
{icon resource number}: 可选参数 - 图标文件中的图标号码 | |
{ShowCmd}:可选参数 - 最大化或最小化程序运行窗口。指定"max"最大化窗口,"min"最小化窗口。 | |
{Start In Folder}: 可选参数 - 指定开始位置。如果没有制定此参数,起始位置就自动设置为你在参数[filename]中指定的文件夹。 | |
{Hot Key}:可选参数 - 指定快捷键(热键)。例: Alt+Ctrl+A, Alt+Shift+F8, Alt+Ctrl+Shift+Y | |
例: | |
shortcut "f:\winnt\system32\calc.exe" "~$folder.desktop$" "Windows Calculator" | |
shortcut "f:\winnt\system32\calc.exe" "~$folder.programs$\Calculators" "Windows Calculator" | |
shortcut "f:\Program Files\KaZaA\Kazaa.exe" "c:\temp\MyShortcuts" "Kazaa" | |
shortcut "f:\Program Files" "c:\temp\MyShortcuts" "Program Files Folder" "" "f:\winnt\system32\shell32.dll" 45 | |
shortcut "f:\Program Files" "c:\temp\MyShortcuts" "Program Files Folder" "" "" "" "max" | |
cmdshortcut | cmdshortcut [folder] [shortcut title] [command] |
创建一个NirCmd命令的快捷方式。当你运行此快捷方式(双击),参数[command]指定的命令会被执行。 | |
例: | |
cmdshortcut "~$folder.desktop$" "Open CDROM" cdrom open k: | |
cmdshortcut "c:\temp" "Turn Monitor Off" monitor off | |
cmdshortcutkey | cmdshortcutkey [folder] [shortcut title] [hot key] [command] |
类似cmdshortcut命令,但允许指定快捷键来激活快捷方式中命令。 | |
例: | |
cmdshortcutkey "~$folder.desktop$" "Open CDROM" "Ctrl+Shift+K" cdrom open k: | |
cmdshortcutkey "c:\temp" "Turn Monitor Off" "Ctrl+Shift+M" monitor off | |
urlshortcut | urlshortcut [URL] [Folder] [Shortcut Title] |
创建网页快捷方式(类似收藏夹中的网页快捷方式)。参数[Folder]指定此快捷方式的创建位置,如果想创建快捷方式到收藏夹,则使用:~$folder.favorites$ variable. | |
例: | |
urlshortcut "http://www.nirsoft.net" "~$folder.favorites$" "NirSoft Web Site" | |
urlshortcut "http://www.google.com" "~$folder.favorites$\Search Engines" "Google" | |
urlshortcut "http://www.yahoo.com" "c:\temp" "Yahoo" | |
exec | exec [show/hide] [application + command-line] |
运行应用程序,可为此程序指定一个或多个命令行参数。参数[show/hide]指定显示运行还是隐藏运行。如果指定'hide',则将在后台运行此程序。 | |
例: | |
exec show "f:\winnt\system32\calc.exe" | |
exec hide "c:\temp\wul.exe" /savelangfile | |
exec2 | exec2 [show/hide] [working folder] [application + command-line] |
类似exec命令,但还支持其它参数,[working folder]指定运行程序的默认目录。 | |
例: | |
exec2 show "f:\winnt\system32" "f:\winnt\system32\calc.exe" | |
exec2 hide c:\temp "c:\temp\wul.exe" /savelangfile | |
execmd | execmd [command] |
执行命令提示符下(控制台)命令,屏幕上不显示任何信息。 | |
例: | |
execmd del "~$folder.desktop$\calc.lnk" | |
execmd mkdir f:\temp\desktop1 | |
execmd copy "~$folder.desktop$\*.lnk" f:\temp\desktop | |
shexec | shexec [operation] [filename] |
根据注册表中文件扩展名的定义打开或打印文件。如:扩展名为.doc的文件将会以MS-Word方式打开,.html文件以默认浏览器打开。如果指定一个有效的网址,将会在默认浏览器中打开此网页。参数[operation]可以为"open"或"print"。 | |
例: | |
shexec "open" "c:\my documents\abc.doc" | |
shexec "print" "d:\files\1.pdf" | |
shexec "open" "http://www.nirsoft.net" | |
setfiletime | setfiletime [filename or wildcard] [Created Date] {Modified Date} {Accessed Date} |
修改一个或多个文件的创建/修改/访问日期。第一个参数可以为单一的文件名或者用通配符指定。日期参数必须以下面的格式指定:"dd-mm-yyyy hh:nn:ss" 。如果没有指定日期参数或者指定为空串("")则日期不变。如果指定时间参数为now,则修改为当前日期和时间。 | |
例: | |
setfiletime "c:\temp\*.exe" "15-05-2004 11:22:12" "22-01-2005 21:22:55" | |
setfiletime "c:\temp\myfile.txt" "24-06-2003 17:57:11" "" "22-11-2005 10:21:56" | |
setfiletime "c:\temp\myfile.txt" now now | |
setfilefoldertime | setfilefoldertime [filename, folder or wildcard] [Created Date] {Modified Date} {Accessed Date} |
修改一个或多个文件的创建/修改/访问日期。此命令同setfiletime命令非常相似。唯一的不同在于setfilefoldertime命令还可以修改文件夹的日期 - 只适用于Windows 2000/XP。 | |
例: | |
setfilefoldertime "c:\temp\myfolder" "10-01-2003 11:22:12" "12-11-2002 02:34:11" | |
setfilefoldertime "c:\temp\myfolder" now now | |
emptybin | emptybin {drive} |
清空回收站。参数{drive}指定你想要清空的回收站所在的磁盘。如果没有指定此参数,则清空所有磁盘的回收站。 | |
例: | |
emptybin f: | |
emptybin | |
setdisplay | setdisplay [width] [height] [color bits] {refresh rate} {-updatereg} {-allusers} |
修改显示设置。参数[width]和[height]代表你的屏幕上的像素点数。参数[color bits]表示屏幕的颜色位数(8 - 256 color, 16 - 16bit color, 24 - 24bit color等等)。{refresh rate}是可选参数,指定显示器的刷新频率。如果指定了{-updatereg}参数,新设置会保存在注册表中。如果同时指定{-updatereg}和{-allusers}参数,新设置会应用与计算机上所有用户,并且保存在注册表中。 | |
例: | |
setdisplay 800 600 24 -updatereg | |
setdisplay 1024 768 24 90 | |
setdisplay 1024 768 8 | |
killprocess | killprocess [process] |
结束指定进程。在参数[process]中,你可以指定进程名的完整路径(eg:C:\Program Files\Internet Explorer\iexplore.exe)或者只指定进程名(eg: iexplore.exe)。你还可以通过后缀'/'指定进程的ID(eg: /1120)。 | |
例: | |
killprocess iexplore.exe | |
killprocess "c:\winnt\system32\calc.exe" | |
killprocess /1830 | |
closeprocess | closeprocess [process] |
通过关闭顶级窗口来结束指定进程。与killprocess命令相反,closeprocess并不强制立即结束进程。相反,它给指定进程的顶级窗口发送一个WM_CLOSE消息。注意:此命令对没有用户界面的进程无效。 | |
在参数[process]中,你可以指定进程名的完整路径(如:C:\Program Files\Internet Explorer\iexplore.exe)或者只是进程名(如:iexplorer.exe)。你还可以通过后缀'/'指定进程的ID(eg: /1120)。 | |
例: | |
closeprocess iexplore.exe | |
closeprocess "c:\winnt\system32\calc.exe" | |
closeprocess /1830 | |
waitprocess | waitprocess [process] |
等待直到指定进程结束 | |
在参数[process]中,你可以指定进程名的完整路径(如:C:\Program Files\Internet Explorer\iexplore.exe)或者只是进程名(如:iexplorer.exe)。你还可以通过后缀'/'指定进程的ID(eg: /1120)。 | |
例: | |
waitprocess iexplore.exe | |
waitprocess "c:\winnt\system32\calc.exe" | |
waitprocess /1830 | |
setprocesspriority | setprocesspriority [process] [priority] |
为指定进程设置新的优先级 | |
在参数[priority]中,你可以指定以下值:normal, low, belownormal, abovenormal, high, realtime。 | |
在参数[process]中,你可以指定进程名的完整路径(如:C:\Program Files\Internet Explorer\iexplore.exe)或者只是进程名(如:iexplorer.exe)。你还可以通过后缀'/'指定进程的ID(eg: /1120)。 | |
例: | |
setprocesspriority iexplore.exe high | |
setprocesspriority "c:\winnt\system32\calc.exe" low | |
setprocesspriority /1830 abovenormal | |
memdump | memdump [process] [dump file] [bytes per line] {bytes to read} {start address} {nohex} {noascii} |
根据你指定的参数,读取进程的内存,并写入文件。 | |
参数: | |
[process]: 你想要读取其内存的进程。可以指定完整路径,或仅进程名,或用后缀'/'指定进程ID。 | |
[dump file]: 用来保存指定进程内存的内容的文件名。 | |
[bytes per line]: dump file中每行的内存字节数。 | |
{bytes to read}: 读取的字节数 | |
{start address}: 指定进程的开始读取地址 | |
{nohex}:可选参数。如果指定此参数,内存数据不会以十六进制形式保存。 | |
{noascii}:可选参数。如果指定此参数,内存数据不会以ASCII格式保存。 | |
例: | |
memdump iexplore.exe "c:\temp\dump.txt" "16" "0x10000" "0x400000" | |
memdump calc.exe "c:\temp\calc.txt" "32" "0x30000" "0x400000" nohex | |
memdump /525 "c:\temp\dump.txt" "16" "0x100000" "0x120000" noascii | |
service | service {\\Computer} [action] [service name] |
改变驱动和服务的状态和启动类型 | |
参数: | |
{\\Computer}:可选参数。指定远程计算机名。如果忽略此参数,默认使用本地计算机。 | |
[action]: 你要进行的操作。此参数包含以下值: | |
start:开启指定的服务或驱动程序。 | |
stop: 停止指定的服务或驱动程序。 | |
pause: 暂停指定的服务或驱动程序。 | |
continue: 继续指定的服务或驱动程序。 | |
restart: 停止并开启指定的服务或驱动程序。 | |
auto:修改指定的服务或驱动程序为自动。 | |
manual:修改指定的服务或驱动程序为手动。 | |
disabled:禁用指定的服务或驱动程序 | |
boot: (只适用于驱动程序)修改指定的驱动程序为引导(boot)。 | |
system:(只适用于驱动程序)修改指定的驱动程序为系统(system)。 | |
[service name]: 服务或驱动程序名 | |
例: | |
service start schedule | |
service \\remote stop schedule | |
service restart w3svc | |
win | win [action] [find] [window to find] [Additional Parameters] |
针对子窗口: | |
win child [find] [top window to find] [action] [find] [child window to find] [Additional Parameters] | |
通过此命令,你可以关闭、隐藏、显示、最大化和最小化指定的窗口。 | |
参数 | |
[action]:对指定的窗口要进行的操作: | |
child: 对指定顶级窗口的子窗口进行操作。 | |
close:关闭指定窗口。 | |
hide: 隐藏指定窗口。 | |
show: 显示指定窗口(在用hide命令隐藏后)。 | |
hideshow:隐藏指定窗口然后再显示此窗口。可用此命令重新填写窗口内容。 | |
activate: 把指定窗口放到上层。 | |
max: 最大化指定窗口。 | |
min: 最小化指定窗口。 | |
normal:最大、最小化指定窗口后,恢复其到正常状态。 | |
trans:使指定窗口透明。参数[Additional Parameters]指定透明程度,值位于0 - 255之间。0 = 完全透明。255 = 完全不透明。 | |
setsize: 设定指定窗口的大小。参数[Additional Parameters]指定窗口的大小,值包括x,y,width,height。 | |
move: 移动/调整窗口。参数[Additional Parameters]指定要移动/调整的像素点数,值包括:x,y,width,height。 | |
center: 指定窗口居中。 | |
settopmost:设置指定窗口的最上层显示状态。如果参数[Additional Parameters]为1,指定窗口为最上层显示,如果为0,则取消最上层显示。 | |
redraw:刷新指定窗口。 | |
settext:修改指定窗口标题/名称。 | |
focus: 在指定窗口上设置焦点。 | |
disable:禁用指定窗口。 | |
enable: 启用指定窗口。 | |
+style: 对指定窗口增加样式常量。参数[Additional Parameters] 指定了增加的样式常量。 | |
-style:移除指定窗口的样式常量。参数[Additional Parameters]指定要移除的样式常量。 | |
+exstyle: 对指定窗口增加扩展样式常量。参数[Additional Parameters]指定要增加的扩展样式常量。 | |
-exstyle:移除指定窗口的扩展样式常量。参数[Additional Parameters]指定要移除的扩展样式常量。 | |
postmsg: 传递信息到指定窗口。参数[Additional Parameters]中的三个值指定了信息参数:Msg, wParam, lParam。 | |
sendmsg: 发送信息到指定窗口。参数[Additional Parameters]中的三个值指定了信息参数:Msg, wParam, lParam。 | |
dlgclick:发送一个鼠标单击命令到对话框内的按钮。参数[Additional Parameters] 指定了按钮的控件ID,或者下列预定义的按钮之一: yes, no, ok, cancel, retry, ignore, close, help。 | |
dlgsettext: 设置文本到对话框内部指定控件。参数[Additional Parameters] 指定了控件ID。 | |
dlgsetfocus: 设置焦点到对话框内部指定控件。参数[Additional Parameters] 指定了按钮的控件ID。 | |
[find]:指定了找到窗口的方式: | |
handle: 通过在参数[window to find]中指定窗口句柄来查找指定窗口。 | |
id: 通过指定子窗口的ID查找需要的子窗口。适用于子窗口。 | |
class: 通过在参数[window to find]中指定窗口类名来查找指定窗口。 | |
title: 通过在参数[window to find]中指定精确的窗口名来查找指定窗口。 | |
stitle:通过在参数[window to find]中指定窗口的前几个字符来查找指定窗口。 | |
ititle: 通过指定一系列存在于窗口标题中的字符来查找指定窗口。 | |
alltop: 所有顶层窗口。 | |
alltopnodesktop: 所有顶层窗口,除了桌面与盘符窗口。 | |
active: 当前活动窗口。 | |
foreground: 前台窗口。 | |
desktop: 桌面窗口 | |
[window to find]: 根据前面参数的值,通过句柄、类名或标题来指定窗口。 | |
例: | |
win close title "calculator" | |
win hide stitle "calculat" | |
win hide ititle "culat" | |
win show class "SciCalc" | |
win activate title "my computer" | |
win max handle 0x00009c01 | |
win redraw alltop | |
win trans ititle "internet explorer" 192 | |
win setsize class "IEFrame" 50 50 400 300 | |
win settopmost class "SciCalc" 1 | |
win child class "Shell_TrayWnd" hide class "button" | |
win child class "Shell_TrayWnd" show class "button" | |
win child title "calculator" hide id 128 | |
win -style title "my computer" 0x00C00000 | |
win child title "my computer" +exstyle all 0x00400000 | |
win sendmsg title "calculator" 0x10 0 0 | |
win dlgclick class "#32770" cancel | |
cdrom | cdrom [action] {drive:} |
此命令允许你弹出/弹入光驱。参数[action]可以为:open或者close。如果不指定{drive:}参数,会使用默认驱动器。 | |
例: | |
cdrom open | |
cdrom close | |
cdrom open J: | |
cdrom close R: | |
clipboard | clipboard [Action] [Parameter] |
允许你写入以及清空剪切板。 | |
[Action] 包含下列值之一: | |
set - 把指定文本放入剪切板。 | |
readfile - 把指定文本文件中的内容放入剪切板。 | |
clear - 清空剪切板。 | |
writefile - 把剪切板中内容写入文件。(只适用于文本文件) | |
addfile - 把剪切板中内容添加到文件。(只适用于文本文件) | |
saveimage - 保存剪切板中的图像到文件。 | |
copyimage - 复制指定图像文件中的图像到剪切板。 | |
对于copyimage 和 saveimage操作,支持以下格式:.bmp, .gif, .jpg, .png, .tiff - 只在安装有GDI+的计算机上有效(在XP/2003/Vista上,GDI+已经作为操作系统的一部分被安装在计算机上)。 | |
例: | |
clipboard set "123456" | |
clipboard set ~$folder.desktop$ | |
clipboard set ~$folder.start_menu$ | |
clipboard readfile "c:\temp\info1.txt" | |
clipboard addfile "c:\temp\clip1.txt" | |
clipboard clear | |
clipboard saveimage "c:\temp\clip01.png" | |
clipboard saveimage "c:\temp\clip01.gif" | |
clipboard copyimage "c:\temp\img01.gif" | |
gac | gac [Action] [Parameter] |
允许安装全局程序集缓存(GAC)中的一个程序集。 | |
例: | |
gac install "C:\temp\MyAssembly\bin\Release\6\MyAssembly.dll" | |
beep | beep [Frequency] [Duration] |
发出嘟嘟声。参数[Frequency]指定发声频率,单位赫兹。参数[Duration]指定发声持续时间,单位毫秒。在Windows 95/98/ME中, 以上参数被忽略,只会发出一声标准的嘟嘟声。 | |
例: | |
beep 500 2000 | |
stdbeep | stdbeep |
发出Windows标准嘟嘟声。 | |
例: | |
stdbeep | |
setvolume | setvolume [device] [left-volume] [right-volume] |
设置音量。参数[device]代表声音设备标识符。大多数情况下,此参数设置为0。在Windows Vista下,默认重放设备指定为1,默认录音设备指定为0。 | |
参数[left-volume]和[right-volume]值位于0(静音)和65535(最大音量)之间,代表了音量的左右声道。 | |
例: | |
setvolume 0 0 0 | |
setvolume 0 32768 32768 | |
setvolume 0 0xffff 0 | |
setsysvolume | setsysvolume [volume] {Component} {Device Index} |
设置系统音量。修改此值亦会影响控制面板下的音量设置。参数[volume]的值位于0(静音)和65535(最大音量)之间。 | |
{Component}是可选参数,指定了下列声音组件之一:master(主音量)、waveout(波形输出)、synth(合成器)、cd、microphone(麦克风)、phone、aux(音频输入口)、line(线路)、headphones(耳机)、wavein(波形输入)。默认值是master(主音量)。在Windows Vista下,声音窗口(控制面板->声音)下的显示的设备必须识别此组件名 。如果设备名包含空格,两边必须加引号。 | |
{Device Index}是可选参数,指定了声音设备索引。如果你有一个以上声卡,那么可以使用此参数。如果没有制定此参数,默认使用控制面板中指定的声卡。 | |
例: | |
setsysvolume 0x8000 | |
setsysvolume 0 | |
setsysvolume 25000 waveout | |
setsysvolume 25000 master 1 | |
Vista例: | |
setsysvolume 0x8000 | |
setsysvolume 0 "front mic" | |
setsysvolume 25000 speakers | |
setsysvolume 25000 "line in" | |
setsysvolume2 | setsysvolume2 [left volume] [right volume] {Component} {Device Index} |
类似于setsysvolume命令,但此命令不是设置整个音量,而是单独设置左声道和右声道。 | |
例: | |
setsysvolume2 10000 20000 | |
setsysvolume2 30000 0 | |
setsysvolume2 25000 15000 waveout | |
setsysvolume2 30000 0 master 1 | |
changesysvolume | changesysvolume [volume change] {Component} {Device Index} |
增加或降低系统音量。参数[volume change]指定增加或降低的单位。(负数降低,正数增加) | |
{Component}是可选参数,指定了下列声音组件之一:master(主音量)、waveout(波形输出)、synth(合成器)、cd、microphone(麦克风)、phone、aux(音频输入口)、line(线路)、headphones(耳机)、wavein(波形输入)。默认值是master(主音量)。在Windows Vista下,声音窗口(控制面板->声音)下的显示的设备必须识别此组件名 。如果设备名包含空格,两边必须加引号。 | |
{Device Index}是可选参数,指定了声音设备索引。如果你有一个以上声卡,那么可以使用此参数。如果没有制定此参数,默认使用控制面板中指定的声卡。 | |
例: | |
changesysvolume 5000 | |
changesysvolume -3000 | |
changesysvolume 0x1000 waveout | |
changesysvolume 0x1000 master 1 | |
Vista 例: | |
changesysvolume 5000 | |
changesysvolume -3000 | |
changesysvolume 0x1000 "line in" | |
changesysvolume 0x1000 "speakers" 1 | |
changesysvolume2 | changesysvolume2 [left volume change] [right volume change] {Component} {Device Index} |
类似changesysvolume命令,但此命令不是设置整个音量,而是单独设置左声道和右声道。 | |
例: | |
changesysvolume2 1000 -1000 | |
changesysvolume2 -3000 0 | |
changesysvolume2 0 -5000 waveout | |
changesysvolume2 -3000 0 master 1 | |
mutesysvolume | mutesysvolume [action] {Component} {Device Index} |
静音/取消静音 | |
参数[action]中,指定1表示静音,0表示取消静音,2表示在静音与正常之间切换。 | |
第二个参数为可选参数,你可以指定下列声音组件之一:master(主音量)、waveout(波形输出)、synth(合成器)、cd、microphone(麦克风)、phone、aux(音频输入口)、line(线路)、headphones(耳机)、wavein(波形输入)。默认值是master(主音量)。在Windows Vista下,声音窗口(控制面板->声音)下的显示的设备必须识别此组件名 。如果设备名包含空格,两边必须加引号。 | |
{Device Index}是可选参数,指定了声音设备索引。如果你有一个以上声卡,那么可以使用此参数。如果没有制定此参数,默认使用控制面板中指定的声卡。 | |
例: | |
mutesysvolume 1 | |
mutesysvolume 0 | |
mutesysvolume 2 waveout | |
mutesysvolume 1 master 1 | |
Vista 例: | |
mutesysvolume 1 | |
mutesysvolume 0 | |
mutesysvolume 2 "rear mic" | |
mutesysvolume 1 speakers 1 | |
wait | wait [milliseconds] |
等待指定的毫秒数。 | |
Examples: | |
wait 1000 | |
wait 500 | |
shellrefresh | shellrefresh |
进行Windows资源管理器的全面刷新。如果你更改了注册表中相关的外壳文件类型,并且需要立即生效,此命令非常有效。(例:如果你改变了gif文件图标) | |
sysrefresh | sysrefresh {Refresh Type} |
进行全面的系统刷新。在更改了注册表中的系统设置后可以使用此命令刷新系统(例:更改了图标大小,环境变量等等)。{Refresh Type}为可选参数。你可以指定下列值之一: "environment" - 更新系统变量,"policy" - 更新策略设置, "intl" - 更新本地设置。 | |
例: | |
sysrefresh | |
sysrefresh environment | |
sysrefresh policy | |
setcursor | setcursor [X] [Y] |
设置鼠标位置。参数[x]和[y]指定光标位置。 | |
例: | |
setcursor 100 50 | |
setcursorwin | setcursorwin [X] [Y] |
设置鼠标位置,此位置相对于活动窗口的左上角。参数[x]和[y]指定光标位置。 | |
例: | |
setcursor 100 50 | |
movecursor | movecursor [X] [Y] |
移动鼠标。参数[x]和[y]指定移动的像素点数。例: | |
movecursor 10 10 | |
dlg | dlg [Process Name] [Window Title] [Action] [Parameters] |
允许你与Windows标准对话框和信息框进行交互。打开一个对话框时,你可以使用此命令"点击"确认/取消/是/否按钮,或者将文本框填入对话框。 | |
dlg "explorer.exe" "run" settext 12298 "calc.exe" | |
dlg "explorer.exe" "run" click ok | |
下面的命令会对任何资源管理器的询问对话框点击"是"。 | |
dlg "explorer.exe" "" click yes | |
下面的命令会对任何进程的询问对话框点击"否"。 | |
dlg "" "" click cancel | |
参数描述: | |
[Process Name]: 指定你要操作的窗口所从属的进程。你可以仅指定进程名或者进程的完整路径。如果此参数为空串(""),命令会在任何进程上执行。 | |
[Window Title]: 指定你要操作的窗口的标题。如果此参数为空(""),命令会不管标题而在任何窗口上执行。 | |
[Action]:你可以指定下列选项之一: | |
click: 点击指定按钮。你可以指定下列预设值之一(仅适用于标准Windows对话框): yes, no, ok, cancel, retry, ignore, close, help.你还可以指定任何控件ID作为数字型值。 | |
settext: 设置指定控件的文本。此操作的第一个参数指定控件ID,第二个参数指定文本。 | |
dlgany | dlgany [Process Name] [Window Title] [Action] [Parameters] |
类似于dlg命令,但还可以用于其他任何窗口,包括非标准Windows对话框。 | |
returnval | returnval [Return Value] |
此命令允许你为NirCmd命令指定返回值。在外部程序调用NirCmd.exe是会用到返回值。 | |
例如,在下面命令中,如果用户选择"是",则NirCmd返回值为0x30。 | |
qboxcom "Do you want to continue ?" "question" returnval 0x30 | |
sendkey | sendkey [Key] [press | down | up] |
向系统发送击键命令。操作系统会按照执行,就好像用户真的按压了键盘上指定键一样。 | |
参数[key]指定虚拟键代码(如:0x2e代表delete键),或者作为下列预设值之一:a - z 和 0 - 9(对应字母数字键),F1 - F24 (对应Fxx键), shift, ctrl, alt, enter, esc。 | |
第二个参数指定了指定键的操作:'press', 'down',或者 'up'。 对每一个down操作,还应该添加up操作。 | |
在下面的脚本例子中,系统会执行就好像用户按了Shift+Ctrl+Esc一样 (会显示任务管理器): | |
sendkey shift down | |
sendkey ctrl down | |
sendkey esc down | |
sendkey shift up | |
sendkey ctrl up | |
sendkey esc up | |
更多例子: | |
sendkey a press | |
sendkey f10 press | |
sendkey enter press | |
sendkey 0x2e press | |
sendmouse | sendmouse [right | left | middle] [down | up | click | dblclick] |
sendmouse [move] [x] [y] | |
sendmouse [wheel] [Wheel Value] | |
向系统发送指定的鼠标事件。操作系统会执行就好像用户真的做出了指定的鼠标操作。 | |
一些sendmouse命令的例子: | |
发送点击鼠标右键事件(对大多数应用程序而言,会打开一个上下文本目录): | |
sendmouse right click | |
发送一个双击鼠标左键事件: | |
sendmouse left dblclick | |
按下鼠标左键,把鼠标往左移动20像素点,向下移动30像素点,然后松开鼠标左键。 | |
sendmouse left down | |
sendmouse move -30 20 | |
sendmouse left up | |
滚动10个单位(标准滑轮鼠标)的鼠标滑轮。(在标准滑轮鼠标上,滑轮值是120的倍数) | |
sendmouse wheel 1200 | |
convertimage | convertimage [source filename] [destionation filename] |
把图像文件转化为其他格式。支持一下格式:.bmp, .gif, .png, .jpg, .tiff | |
适用于Windows XP/2003/Vista (需要GDI+) | |
例: | |
convertimage "c:\temp\test1.gif" "c:\temp\test1.png" | |
convertimage "c:\temp\test1.jpg" "c:\temp\test1.gif" | |
convertimages | convertimages [source wildcard] [extension] |
把多个图像文件转化为其他格式。支持以下格式:.bmp, .gif, .png, .jpg, .tiff | |
适用于Windows XP/2003/Vista (需要GDI+) | |
例: | |
convertimages "c:\temp\a*.gif" .png | |
convertimages "c:\temp\*.jpg" .gif | |
savescreenshot | savescreenshot [filename] |
保存当前屏幕截图到指定的图像文件。支持以下格式.bmp, .gif, .png, .jpg, .tiff | |
适用于Windows XP/2003/Vista (需要GDI+) | |
例: | |
savescreenshot "c:\temp\shot.png" | |
savescreenshotwin | savescreenshotwin [filename] |
保存当前活动窗口截图到指定图像文件支持以下格式 .bmp, .gif, .png, .jpg, .tiff | |
适用于Windows XP/2003/Vista (需要GDI+) | |
例: | |
savescreenshotwin "c:\temp\win.png" | |
shellcopy | shellcopy [source file or wildcard] [destination] {Flags} |
从一个文件夹复制一个或多个文件到其他文件夹,并且就像资源管理器下复制文件时一样显示进程框。 | |
对于参数{Flags},你可以指定一个或多个下列值: | |
yestoall: 对所有询问回答"是"。 | |
noerrorui: 在用户界面不显示错误信息。 | |
silent: 安静模式 - 不显示复制进度信息。 | |
nosecattr:不复制文件的相关属性。 | |
例: | |
shellcopy "c:\temp\*.*" "d:\temp" | |
shellcopy "c:\temp\*.*" "d:\temp" yestoall noerrorui | |
filldelete | filldelete [source file or wildcard] |
零字节填充指定文件或通配符文件,然后删除文件。这也就意味着用此命令删除掉的文件不可再被恢复。 | |
例: | |
filldelete "c:\temp\*.*" | |
filldelete "c:\temp\myfile.dat" | |
反馈:
如果有任何问题、建议、评论或者发现任何bug,请发邮件联系我:nirsofer@yahoo.com。