2013-01-08 41 views
0

我试图打开存储在本地网络服务器上着这片批号各种文件上进行迭代:批处理文件通过文件的本地网络服务器

for /f "tokens=*" %%G in ('dir /b /a:d "\\server\directory\*"') do %%G\setup.xml 

但由于dir \\server\directory没有工作,所以深得那段代码。
我该如何做到这一点?

预先感谢您

+0

为什么不使用PowerShell呢? – mortb

回答

2

可以使用

net use X: \\server\directory 

映射一个驱动器,然后你可以使用

pushd X: 

切换到该目录,然后您可以在运行批处理命令当前目录,当您完成并且文件不再使用时,可以使用

删除驱动器
net use X: /delete 
+0

谢谢你的回答。我想过,但由于我必须编辑我打开的文件,所以我不能在'for'循环之后执行'popd' ......但仍然想要在完成编辑后删除虚拟磁盘文件。我怎样才能做到这一点?两个单独的批处理文件可能? –

+0

对不起,我真的不明白你在做什么。你会用什么2批处理文件? –

+0

我想完成编辑我打开的文件后用pushd制作的虚拟磁盘 –

0

你写:

因为目录\服务器\目录不起作用

起初我会说,不工作。但实际工作的是:

dir \\server\sharename 

服务器必须共享该目录。在服务器上,您可以使用像这样的命令:

net share public=c:\public 

的,你应该能够:

dir \\server\sharename 
+0

谢谢您的回答。我明白你的意思......不幸的是,我无法直接从服务器运行命令。我只能访问这些文件。 –

+0

因此,服务器已通过共享名提供文件?我想让你知道,在我的系统上,我可以毫无问题地运行你的例子(当然,我将它改为echo %% G,工作正常)。也许你正在运行的程序不会通过共享名来访问文件。 – jimhark

+0

如果我知道你的意思是共享名,不。要访问这些文件,我需要转到“网络”,然后等待共享计算机出现,并在服务器出现时双击并浏览它。 –

相关问题