从网络共享(VMware共享文件夹)中运行批处理文件



我在cygwin和映射的网络驱动器上遇到了一些问题。我的设置有点令人费解,以应对我们的公司VPN的某些限制。我在VMware Fusion下运行Windows 10 VM,其中包括Mac主机的共享文件夹,该文件夹映射到Windows中的网络驱动器。原因是b/c i使用VPN连接访问远程GIT存储库,该连接利用了浏览器插件,不幸的是,该连接仅在Safari中工作。我需要从Mac主机运行GIT命令,但项目的构建/开发环境是Windows。VPN浏览器插件无法在Windows下的任何浏览器中安装。希望是一个暂时的问题,但我现在必须解决一个问题。

从我的cygwin环境中,映射驱动器不在/cygdrive下显示,可能是b/c,它是带有HGFS文件系统类型的共享文件夹。我可以安装共享文件夹,但是当我尝试从Cygwin环境运行批处理文件时,我会收到以下错误:

./OpenCommandPrompt.bat
'\vmware-hostShared FoldersgrantProjectsltsProduct'
CMD.EXE was started with the above path as the current directory.
UNC paths are not supported.  Defaulting to Windows directory.
The system cannot find the path specified.
'setenv.bat' is not recognized as an internal or external command,
operable program or batch file.
'setclasspath.bat' is not recognized as an internal or external 
command, operable program or batch file.
C:Windows>

它不喜欢UNC路径。我可以使用映射的驱动器字母从PowerShell中罚款,但Cygwin没有运气。我的愿望是运行VM无头,并通过主机通过SSH访问Windows环境,以便如果可能的话,我想从Cygwin环境中进行工作。有任何建议吗?

我能够通过创建一个简单的脚本来解决我的问题,该脚本是我从.bash_profile执行的。我基本上检查存在/cygdrive/h文件夹的存在,如果它不存在,则执行脚本。

#!/bin/bash
net use H: '\vmware-hostShared Foldersshare'

我尝试从Windows绘制驱动器,但所有尝试这样做的尝试都无法在Cygwin中的/cygdrive文件夹下注册驱动器映射。那是我试图克服的问题。一旦我将映射的驱动器/cygdrive驱动器,我就可以执行所有批处理脚本。

说实话,我仍然不确定为什么从Windows映射驱动器不会注册Cygwin。反向也是如此:如果我从终端执行NET命令,则不会在Explorer中注册。

最新更新