我有一个远程目录,它已共享并挂载到我的本地主机。我知道远程目录已正确挂载和共享,因为我可以在正常的鼠标和单击事件期间读取、写入、执行文件。
不过,我确实需要编写一些脚本,并且希望使用 Windows cmd 可执行文件来执行此操作。
例如,我想cd
/将目录更改为远程目录并重命名文件。
如何在示例 Windows 脚本中执行此操作?
到目前为止,下面的命令行对我来说不起作用。我可能一开始就没有正确地传递它。
C:\>cd \\myremotehost\MY_DIR
错误:
`\myremotehost\MY_DIR'
CMD 不支持 UNC 路径作为当前目录
我想编写此脚本并重命名myfile
为mynewnamefile
。
答案1
您需要将网络位置安装为网络驱动器,然后才能从命令提示符中使用它。如下所示:
net use x: \\myremotehost\MY_DIR
x:
之后,您应该能够执行任何您想要的操作,使用 X:\ 代替 \myremotehost\MY_DIR。完成后,您可以使用以下命令断开驱动器连接
net use x: /delete
答案2
您的共享可能以驱动器号的形式安装。您很可能想要执行如下操作:
ren X:\my file myfile
要编写脚本,您只需将命令放入 .cmd 文件中即可。
答案3
根据您的评论,您想要做的是这个批处理文件:
X:
cd\目录
ren 文件名 新文件名
第一个命令似乎就是您所缺少的。
如果您想使用 UNC,另一个解决方法是:
xcopy \\服务器\目录\文件名 \\服务器\目录\新文件名
删除\\服务器\目录\文件名
效果是一样的。
答案4
我建议使用“net use”并映射驱动器号并手动取消映射,因为它适用于所有版本的 Windows。
但是,您需要知道,它pushd
不会cd
(取决于 Windows 版本)自动为您映射驱动器号,而是一定要调用popd
来取消映射驱动器号。
**pushd** \\server\directory\
ren filename filenamenew