Board logo

标题: [已结]如何用批处理隐藏磁盘 [打印本页]

作者: chineselgs     时间: 2006-5-5 19:35    标题: [已结]如何用批处理隐藏磁盘

大家好,我的小孩子什么都不懂,老把电脑里的文件搞的乱七八糟.我想把我的C D E 三个盘隐藏掉,听一个朋友说可以写两个批处理,运行第一个把磁盘隐藏掉,运行第二个就会把它显示出来.我想了一下,那样也挺不错的,我把第一个加到启动项里,孩子玩时就会自动隐藏磁盘,可以防破坏,我用时就运行一下第二个,一切OK!多爽啊~
所以为了祖国的未来,我想请各位大侠们帮我写两个批处理,非常感谢,真诚的感谢~~~还是感谢~!!!



我用的系统是XP2,系统分了五个区,DOS也是系统自带的.我对这方面不太懂,所以来请教一下,DOS命令我还在学习中,而且也不会搞注册表,就算会,每次用电脑时都要在注册表项上搞老半天,是不是有点得不偿失了?所以请您动一下贵手,帮帮忙


[ Last edited by willsort on 2006-5-11 at 17:24 ]
作者: chineselgs     时间: 2006-5-5 19:38    标题: 对了,我的系统是XP2 分了五个区

我用的系统是XP2,DOS也是系统自带的.我对这方面不太懂,所以来请教一下,DOS命令我还在学习中,而且也不会搞注册表,就算会,每次用电脑时都要在注册表项上搞老半天,是不是有点得不偿失了?所以请您抬下贵手,帮帮忙

[ Last edited by chineselgs on 2006-5-5 at 20:18 ]
作者: 3742668     时间: 2006-5-5 19:55
请说明运行环境。
win98下用regedit,XP除了regedit外还可以用reg,方法就是在
HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Policies\Explorer
下建一DWORD类型键,名为 NoDrives,值为 1c  (16进制) 或 28 (十进制).
完成后可达到隐藏C,D,E盘的目的,不过仍然可以从地址栏输入c:或者从cmd下访问.
若想限制从地址栏访问的话还须更改
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\Advanced\Folder\Hidden\SHOWALL下部分键值。
作者: chineselgs     时间: 2006-5-5 20:16    标题: 怎么这么安静啊?

怎么这么安静啊,除了版主进来看了一下,别人都去哪了,还请大家帮帮忙啊~!!

[ Last edited by chineselgs on 2006-5-5 at 20:19 ]
作者: 3742668     时间: 2006-5-5 20:21
XP系统:
隐藏C,D,E盘:
@reg add "HKCU\Software\Microsoft\Windows\CurrentVersion\Policies\Explorer" /v NoDrives /t reg_dword /d 28
取消隐藏:
@echo off
reg delete "HKCU\Software\Microsoft\Windows\CurrentVersion\Policies\Explorer" /v NoDrives /f
wmic process where caption="explorer.exe" call terminate
分别保存为  隐藏.bat  和  显示.bat ,然后把 隐藏.bat拖到启动项中就可以了。
如果想看效果的话可以运行 隐藏.bat后结束explorer.exe进程,然后再运行explorer后打开我的电脑。
作者: chineselgs     时间: 2006-5-5 20:26    标题: 真是太感谢版主了!

版主,在下感激您啊!!做为回报我向您做出承诺,以后再也不在你的版区灌水了!!


对了版主,能不能给我解释一下这些命令的具体用法啊??

[ Last edited by chineselgs on 2006-5-5 at 20:29 ]
作者: 3742668     时间: 2006-5-5 20:44
开始→帮助和支持→输入“命令行”(或者reg)→回车确定→点左边的“命令行参考A-Z”(reg)
把命令行参考A-Z看完了就行了。
作者: fujianabc     时间: 2006-5-5 21:20
楼上的两位可以考虑不要从注册表修改,这样并不安全。
不如直接用mountvol命令挂载和卸载分区来操作。
作者: wang6610     时间: 2006-5-5 21:39
fujianabc高级用户

给cmd例子吧!!
作者: 3742668     时间: 2006-5-5 23:27
晕啊,刚才打得太多,居然全没了,害我重新回复。。
长话短说:
    首先,编辑注册表其实风险并不是很大,特别是这种隐藏盘符的,就算改错了也对系统没有影响。
    其次,fujianabc兄所说的mountvol命令并不能实现楼主所希望的目的,因为楼主要隐藏的分区中有C盘,如果用mountvol把C盘的装载点删除了的话,那么除了重启,并没有什么好的办法能够再装载C盘。(或许考虑事先把cmd.exe以及mountvol.exe拷贝到别的盘去吧,不过怀疑cmd的运行环境是否受到影响,有兴趣的朋友可以试一下)
    所以,fujianabc兄的方法虽然独树一帜,但是对于楼主并不实用。

Re wang6610:
隐藏F盘:
@echo off
mountvol f: /l >装载点.txt
mountvol f: /d
恢复F盘:
@echo
set /p name=<装载点.txt
mountvol f: %name%
当对多个卷进行操作时,需要自己考虑保存卷名以及读取卷名。

另外,XP中操作磁盘的命令提示符工具有了较大的加强,不过有不少是需要在NTFS格式下才有用的命令,比如:
fsutil hardlink create /?
这个命令将为文件创建一个硬连接,虽然在属性里面看它似乎占有部分空间,其实它仅仅是一个快捷方式(最贴切的描述吧.)而已,它并不会占用磁盘空间。
相对地,由于NTFS格式支持多文件流,所以,在NTFS格式下也可能出现看到的空间与实际空间不符合的情况,例如:
echo 欢迎大家到DOS批處理 & 腳本技術(批處理室) 学习和交流各类脚本技术 >myfile.txt:3742668
命令运行后会在myfile.txt文件中创建一个新的文件流:3742668,保存的内容就是echo命令的输出,但是在资源管理器中并不会看到myfile.txt的文件大小发生变化,我曾经尝试过写了几十MB的东西到某文件流中,在windows中并不能得到磁盘空间变化的状况。甚至有时候可以用它来实现简单的文件保护,把某个文件写到windows目录的某个流中去,这样如果不知道流名是无法删除的。而想要查看也比较简单:
more < myfile.txt:3742668

type < myfile.txt:3742668
甚至
notepad.exe <myfile.txt:3742668.txt  (写如的时候流名也要是3742668.txt)
windows并没有提供查找文件中的非主流的其他流的工具,不过如果磁盘上有非NTFS格式的分区的话,当你拷贝包含多文件流的文件到非NTFS分区的时候就会提示即将丢失非主流的数据,提示中包含有流名。
    由于是重写,比较浮躁,写得比较乱,勿怪。
作者: chineselgs     时间: 2006-5-6 15:15    标题: 同志们的回答太精采了,感动~

我感觉版主第二个方法更适用一些,但是那些东东我不太懂~
所以想问一下这些命令的具体意思与用法~
本人还在DOS幼儿园学习中,所以还请不要笑我~~
作者: GOTOmsdos     时间: 2006-5-6 18:30
我输入了:echo xxxx >myfile.txt:123456
但出错:The filename, directory name, or volume label syntax is incorrect.
作者: 3742668     时间: 2006-5-7 11:40
RE GOTOmsdos:
从你的错误描述上来看,似乎并非在windows下进行的操作。
首先要是在NTFS格式的分区下,然后我的测试环境是XP(我签名里面有)。
不知道你是在什么环境下操作的,似乎是某种DOS?
作者: xuantian     时间: 2006-5-8 00:22
既然是xp系统,用 "windows优化大师" 或者其它的工具软件来隐藏或取消隐藏磁盘分区(很直观也很方便),说实话隐藏根本就没有任何用处,应该是使用NTFS分区并分配权限才成
作者: chineselgs     时间: 2006-5-8 00:27
高手就是高手,唉,令我这个灌水专业户惭愧啊~~
作者: kingljp     时间: 2006-5-10 00:54


  Quote:
Originally posted by chineselgs at 2006-5-5 19:35:
大家好,我的小孩子什么都不懂,老把电脑里的文件搞的乱七八糟.我想把我的C D E 三个盘隐藏掉,听一个朋友说可以写两个批处理,运行第䠮..

题外话,XP下建议将磁盘格式设成NTFS,然后给你的小孩用受限用户登陆,你用管理员登陆即可防止乱删改文件。因为隐藏不等于不能更改

作者: 3742668     时间: 2006-5-10 13:54
本版主要是讨论脚本的编写,而不是讨论各种方法孰好孰坏,请大家不要偏题。
    就方法来说,没有完美的方案,只要能接触到的主机,没有什么安全性可言,至于用第三方软件的方法......
作者: chujiafu     时间: 2006-5-23 18:45
可以用Notepad编写两个扩展名为.Reg的文件,一个是隐藏的,双击导入就隐藏;一个取消隐藏的,双击导入就取消隐藏。
作者: lxmxn     时间: 2006-11-11 13:55

  对于斑主所说的查看流文件的内容的两个命令,其中type和notepad.exe的方法(只有more方法都适用,而notepad.exe方法必须在主文件和流文件都带.exe后缀的情况下才适用),在我这里并不适用啊。我的环境是Windows xp sp2 CMD,而且是在NTFS分区实验的。
C:\>fsutil fsinfo volumeinfo c:
卷名 : System
卷序列号 : 0x907641fb
组件长度最大值 : 255
文件系统名 : NTFS
支持区分大小写的文件名
保留文件名的大小写
支持文件名中的 Unicode
保留并加强 ACL
支持基于文件的压缩
支持磁盘配额
支持稀疏文件
支持重分析点
支持对象标识符
支持加密文件系统
支持带有名称的数据流

C:\>echo www.cn-dos.net>123.txt:lxmxn

C:\>type 123.txt

C:\>type 123.txt:lxmxn
文件名、目录名或卷标语法不正确。

C:\>type < 123.txt:lxmxn
命令语法不正确。

C:\>more < 123.txt:lxmxn
www.cn-dos.net

C:\>more < 123.txt:lxmxn.txt
系统找不到指定的文件。

C:\>notepad.exe < 123.txt:lxmxn

C:\>notepad.exe < 123.txt:lxmxn.txt
系统找不到指定的文件。

C:\>type <123.txt:lxmxn.txt
系统找不到指定的文件。

C:\>

作者: lxmxn     时间: 2006-11-11 20:54

  另外,我发现用 fsutil hardlink create <新文件> <已有文件> 创建的硬连接和 copy 命令的作用差不多,不知道这两者有什么区别和联系?

作者: honhaizh     时间: 2006-11-16 20:38
无比景仰
作者: 6622186     时间: 2007-3-3 13:23
我觉得15楼说的很对, 受限用户的确安全多了
作者: zh159     时间: 2008-1-13 12:32


  Quote:
Originally posted by 3742668 at 2006-5-5 19:55:
请说明运行环境。
win98下用regedit,XP除了regedit外还可以用reg,方法就是在
HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Policies\Explorer
下建一DWORD类型键,名为 NoDrives,值为 1c  (16进制) 或 28 (十进制).
完成后可达到隐藏C,D,E盘的目的,不过仍然可以从地址栏输入c:或者从cmd下访问.
若想限制从地址栏访问的话还须更改
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\Advanced\Folder\Hidden\SHOWALL下部分键值

C~Z盘对应DWORD值是哪些?
作者: gongqiong     时间: 2008-3-13 11:38
直接在磁盘管理里面删除驱动器号不就可以了吗?显示的时候添加进去,,不是更简单,但是不能对C:操作。
作者: jinlizhpc     时间: 2008-3-13 14:39
能不能在纯DOS下在最后一个逻辑再分一个小分区并且隐藏
作者: stance     时间: 2008-4-21 17:57
DOS簡直無所不能啊!

這裏看到的好多事情以前認爲只有語言編程才能做到。
作者: xxit888     时间: 2010-5-21 11:42
很强大
作者: rs369007     时间: 2010-5-21 14:12
今天正在想这个问题,论坛就有人讨论。无比幸运:

文件流的参考资料
http://laokaddk.blog.51cto.com/368606/125067
作者: basswood     时间: 2010-5-25 09:41
14楼正点.....