MySQL, Oracle, Linux, 软件架构及大数据技术知识分享平台

网站首页 > 精选文章 / 正文

批处理之文件夹映射

2024-12-11 13:34 huorong 精选文章 4 ℃ 0 评论

#暑期创作大赛#

不知道大家还记得pushd和popd这对命令不,当时我们记得pushd会将路径文件夹映射成一个虚拟磁盘,而popd会移走创建的这个虚拟磁盘。这篇我们就来认识下文件夹映射有哪些命令,它们又有何区别,优缺点?

如果在windows界面,打开此电脑--计算机--映射网络驱动器--勾上在登录时重新连接(例子:\\server\share),就可以映射一个网络路径文件夹了。你可以在资源管理器看到新增了一个磁盘,打开看是该网络路径文件夹的内容。

优点:图形化界面,操作方便,重启后映射的磁盘不会消失,除非用户disconnection解除映射。

缺点:仅支持unc网络路径,不支持本地文件夹映射。

能用于批处理的命令呢?

1.pushd

这个命令不多讲了,可参考我之前的文件,有专门叙述过。

能映射本地或unc网络路径,自动逆向寻找驱动器(磁盘)号,从z开始,有空的未占用的就指派为驱动器号。解除映射用popd。pushd 能列出当前被pushd映射的路径和驱动器号。

优点:用于批处理网络文件夹切换

缺点:重启电脑后映射就消失了。

2.subst

先来看下语法

再来看个例子

值得注意的是:

subst支持本地和网络路径,需要手动指派驱动器号(不分大小写),参数/d解除映射,需要注意此处/d不能写成/del或/delete。

优点:支持本地和网络unc路径,可用于批处理

缺点:重启电脑后映射消失。映射的磁盘卷标不变,不太容易区分。

3.net use

这个其实是net命令的一个参数,对应的还有net share等等,一些参数还可增加帐户,修改帐户密码等。

但是我们看net use的语法需要换一个方式

net help use



这个命令是与网络有关的,因此一般仅支持网络路径映射,但是结合net share能把本地文件夹共享后再映射。




net share需要在管理员权限下的命令提示符下运行,如上图。

例:

net share temp=c:\temp

甚至能加上参数,如允许多少人访问,是否缓存等,如/unlimited /CACHE:No,共享成功后可在网络上看到这台计算机共享的文件夹。

同样,net share可直接列出当前正共享的文件夹,磁盘等。使用net share temp /d可解除之前的共享,temp是共享名。/d可换成/del或/delete,效果不变。

然后能使用如下命令来映射这个共享的文件夹:

net use V: \\%ComputerName%\temp

net use支持随机分配或指定驱动器号(不区分大小写,*为随机分配,任意空闲的磁盘号)

注意上面的/d可换成/del或/delete,/y可换成/yes,效果不变。如果映射的磁盘被打开,不指定/y强制解除,会弹出提示,否则没有是否解除的提示,直接就解除映射了。

用net use命令映射共享目录后,重启动系统,再打开共享目录,如果还要输入密码(如果共享目录访问密码和本机系统密码不同时)。每次都要重新输入,比较烦。

解决方法是如下使用命令:
net use z: \\192.168.1.234\sharefolder /savecred /persistent:yes
这样执行后,下次开机,这个目录就自动被映射好了,不用输入密码,可以直接进入。

也可以只使用以下命令在DOS中映射网络驱动器:
net use x: \\%computername%\sharename /persistent:yes
其中,x是要分配的驱动器号,sharename是共享文件夹的名称。如果您想在每次登录时都连接到该驱动器,请将/persistent:yes参数添加到命令中。

优点:重启电脑后,映射的磁盘还在,同资源管理器最接近的一个命令,可用于批处理。如果不在,可将/persistent:yes参数加入命令。

缺点:不能直接映射本地文件夹,需共享后再映射。

注意:

文中所有的这些共享,映射等命令请在c盘根目录下使用这些命令,否则可能在资源管理器下看不到映射成功的磁盘(无论是pushd,subst,net use/share)。

Tags:pushd popd

控制面板
您好,欢迎到访网站!
  查看权限
网站分类
最新留言