如何在 Cygwin 中转到远程目录?

dav*_*lab 57 networking windows cygwin

我正在使用最新版本的 Cygwin 尝试cd进入 Windows XP Pro Service Pack 3 上的网络驱动器。 Windows 资源管理器中该目录的路径类似于:

\\myserver\photos\original

我尝试将它安装到资源管理器中的驱动器号('X'),效果很好,但是当我运行命令时:

ls /cygdrive/x/

它只是在那里冻结并挂了。我有什么想法可以进入这个目录并至少列出那里的文件吗?

Bol*_*wyn 61

添加到庸医的答案:您也可以通过以下方式访问网络驱动器

ls //myserver/photos
Run Code Online (Sandbox Code Playgroud)

但是,在我的机器(Windows Vista)上,它只有在首先将资源管理器指向那里(\\myserver\photos) 并输入我的用户名和密码后才能工作。

在 Cygwin 文档中,他们对此只字未提

  • `ls //VBOXSRV/<vbox 共享名>/` - 对于那些想通过 cygwin 访问 VirtualBox 共享的人。 (2认同)

qua*_*ote 13

你做对了——这个过程适用于我的设置。该/cygdrive/X符号应该对任何驱动器工作Windows已安装并赋予一个驱动器号。

  • 你能在资源管理器中浏览这个网络共享吗?(您的问题没有明确说明,因此请仔细检查。)

  • 您可以尝试使用标准的 Windows cmdshell(不是 Cygwin)——Windows 的内置程序pushd会自动将共享挂载到临时驱动器。

    C:> pushd \\myserver\photos\original
    
    Z:\original>
    
    Run Code Online (Sandbox Code Playgroud)

如果这些都不起作用,那么你又遇到了另一个问题。(有网络共享的电脑吗?)

如果这些工作但 Cygwin 仍然无法查看/cygdrive/X(或/cygdrive/z在您的 Windowspushd测试之后),我会尝试重新启动您的工作站。如果重新启动后问题仍然存在,则您的 Cygwin 安装可能已损坏;老实说,我想不出它不起作用的任何其他原因。


小智 5

我也有同样的症状。该问题似乎与在管理模式下运行应用程序有关。一旦我关闭“以管理员身份运行此程序”选项并重新启动应用程序,我就可以通过 /cygdrive/ 目录访问网络驱动器。

注意:我运行的是 Windows Server 2012 R2,但我敢打赌这适用于 windows7 及更高版本。

注意:您必须打开二进制文件本身的属性对话框(即 mintty.exe),而不是打开访问应用程序管理选项的快捷方式。

希望这可以帮助!