R 中的 Windows/Cygwin 链接

发布于 2024-12-11 00:19:22 字数 866 浏览 0 评论 0原文

[最初发布于 RStudio 的支持网站,但看起来就像这是一个核心 R 问题,而不是 RStudio。]

我试图弄清楚如何创建一个将在 R 中遍历的文件系统链接。我已经尝试了 Cygwin符号链接和Windows 链接无济于事。我这样做是因为我有一个充满大型数据文件的大目录,我希望避免将其复制到我的工作区。

为了创建符号链接,我在 Cygwin 中执行了 ln -s ../otherdir/data data 。如果我然后执行ls data/,我可以通过链接查看数据文件。

为了创建 Windows 链接,我在 Windows 资源管理器中的 otherdir/data/ 目录中进行了“复制”,然后在工作区中进行了“粘贴快捷方式”并将名称更改为 data.lnk。如果我双击该链接,我就会正确地通过该链接。

所以这两个链接都是正确定位的。

现在在 RStudio 中,我得到以下输出,表明这两个链接都无法遍历:

> dir()
[1] "data" "data.lnk" "docs" "src" "tmp"
> dir('data')
character(0)
> dir('data.lnk')
character(0)
> dir('data/')
character(0)
> dir('data.lnk/')
character(0)

是否有一些可以工作的变体?我使用的是 Windows 7 和 R 2.13.1。

[originally posted at RStudio's support site, but it looks like it's a core R issue, not RStudio.]

I'm trying to figure out how to create a filesystem link that will be traversed within R. I've tried both Cygwin symlinks & Windows links to no avail. I'm doing this because I've got a big directory full of large data files that I'd like to avoid copying to my workspace.

To create the symlink, I did ln -s ../otherdir/data data in Cygwin. If I then do ls data/, I can see the data files through the link.

To create the Windows link, I did a "copy" in Windows Explorer on the otherdir/data/ directory, then did "paste shortcut" in my workspace and changed the name to data.lnk. If I double click that link, I'm taken correctly through the link.

So both links are correctly targeted.

Now in RStudio, I get the following output, indicating that neither link can be traversed:

> dir()
[1] "data" "data.lnk" "docs" "src" "tmp"
> dir('data')
character(0)
> dir('data.lnk')
character(0)
> dir('data/')
character(0)
> dir('data.lnk/')
character(0)

Is there some variation on this that will work? I'm using Windows 7 and R 2.13.1.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

日裸衫吸 2024-12-18 00:19:22

Windows 快捷方式并不是真正的文件系统链接。这是一个常规文件,资源管理器知道要以不同的方式对待。对于其他程序来说,它只是一个文件。

根据 Wikipedia,Cygwin 符号链接是作为快捷方式实现的,而不是真正的符号链接,因此它也会有同样的问题。

您是否尝试过使用 mklink 命令创建链接,如此处?

免责声明:我自己没有尝试过。

A Windows shortcut isn't really a filesystem link. It's a regular file, that Explorer knows to treat differently. To other programs, it's just a file.

According to Wikipedia, a Cygwin symlink is implemented as a shortcut, rather than a true symbolic link, so it will have the same problem.

Have you tried using the mklink command to create the link, as described here?

Disclaimer: I haven't tried it myself.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文