注册
登录
论坛
搜索
帮助
导航
私人消息 (0)
公共消息 (0)
论坛任务 (0)
系统消息 (0)
好友消息 (0)
帖子消息 (0)
批处理之家
»
BAT求助&讨论
» 【已解决】关于隐蔽命令 2>nul
[新手上路]
批处理新手入门导读
[视频教程]
批处理基础视频教程
[视频教程]
VBS基础视频教程
[批处理精品]
批处理版照片整理器
[批处理精品]
纯批处理备份&还原驱动
[批处理精品]
CMD命令50条不能说的秘密
[在线下载]
第三方命令行工具
[在线帮助]
VBScript / JScript 在线参考
返回列表
发帖
raymai97
发短消息
加为好友
raymai97
当前离线
UID
25847
帖子
268
精华
0
积分
872
PB
815
技术
19
捐助
0
阅读权限
40
在线时间
167 小时
注册时间
2010-5-30
最后登录
2012-5-23
中尉
帖子
268
积分
872
技术
19
捐助
0
注册时间
2010-5-30
1
楼
跳转到
»
倒序看帖
打印
字体大小:
t
T
发表于 2011-8-21 09:00
|
显示全部帖子
[其他]
【已解决】关于隐蔽命令 2>nul
本帖最后由 raymai97 于 2011-8-21 11:04 编辑
比如我们要隐蔽net的消息,就
net start themes>nul
复制代码
但是如果发生错误,还是会显示,所以就换成
net start themes>nul 2>nul
复制代码
结果无论运行成功或否,都不会显示消息
我不明白的是,2>nul 其实是什么东西,为何一定要 2>nul 呢?如果我放1>nul或3>nul就不行了
2>nul到底是什么神奇的东西呢?
——————————————————————————
答:
重定向的作用是人为修改输出、输入的目标设备,比如把本该输出到屏幕的内容输出到打印机prn,或者输出到文件file,再或者输出到空设备nul,每个句柄只能有一个指向,所以如果把输出重定向到空设备上就相当于屏蔽了这个句柄的输出
句柄0往往是默认输入句柄,句柄1为默认的正确回显输出句柄,而句柄2一般输出错误回显,这只是约定俗成的规律,也有不遵守的,比如type命令的句柄2并非总是错误输出,还有某些命令并不开启句柄0,比如wmic。
至于句柄3~9则由命令自定义,不过一般只用到0~2这三个句柄。【感谢else回答】
例子:
net start uxsms 2>nul 只显示正确时的信息,隐蔽错误信息
net start uxsms >nul 只显示错误信息,隐蔽正确时的信息
net start uxsms >nul 2>nul 无论怎样都不显示信息
1
评分人数
CrLf:
感谢给帖子标题标注[已解决]字样
PB + 2
收藏
分享
为何批处理不适合做界面
为何随风讨厌call命令
http://bbs.bathome.net/thread-4482-1-10.html
返回列表
BAT转载代码
BAT原创&转载
有偿求助
VBS求助&讨论
VBS教程&资料
意见反馈
第三方命令行
Perl
UNIX/Linux Shell
Take Command
批处理专区: BAT CMD DOS
BAT求助&讨论
BAT教程&资料
BAT原创&转载
BAT新大陆
BAT转载代码
新手练功
出题挑战
有偿求助
第三方命令行
开源原创工具
iBAT
Take Command
其他脚本区
PowerShell求助&讨论
PowerShell教程&资料
PowerShell原创&转载
VBS求助&讨论
JS / JScript / JavaScript
VBS教程&资料
VBS原创&转载
UNIX/Linux Shell
Python
Perl
网络资源区
电脑技术研讨
精品软件交流
论坛事务区
站务交流
意见反馈
论坛公告
版主申请
交换链接
建站杂谈
活动专区
论坛总版规
[收藏此主题]
[关注此主题的新回复]
[通过 QQ、MSN 分享给朋友]