问题标签 [symlink-traversal]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
3 回答
1554 浏览

swift - 如何判断某个路径是否存在符号链接?

我有一个原始文件 ./path/to/foo.txt和指向它的符号链接/other/path/to/foo.txt. 我删除/path/to/foo.txt,但将符号链接保留在原地。如何使用 Cocoa API 判断符号链接仍然存在?


我通过使用标准/推荐找到了这一点FileManager.fileExists(atPath:)。对于不熟悉该 API 的任何人来说,这里的问题是它遍历符号链接。所以,当我这样做时:

它返回false,因为它看到我给了它一个符号链接并解析了它,然后看到解析的路径中没有文件。

正如文档所说:

如果path您的应用程序无法访问 at 的文件,可能是因为一个或多个父目录无法访问,则此方法返回false. 如果 in 中的最后一个元素path指定了符号链接,则此方法遍历链接并返回truefalse基于链接目标处文件的存在。

中似乎没有替代方案FileManager。所以,我想知道我是否可以调用 Cocoa API 来判断那里是否存在符号链接,或者我是否必须求助于 C 或 Bash API。

0 投票
1 回答
1408 浏览

node.js - Node.js 确定符号链接的目标路径

注意:使用 Node.js 8

我有一系列符号链接:a-> b->c

我需要将初始符号链接解析a为其目标目标b。这如何在 Node.js 中实现?

fs.realpath函数解析符号链接链,因此它解析ac. 这不是期望的行为。

我也试图找到一个npm包来做到这一点,但到目前为止还没有任何运气。

我想也许我可以fs.open符号链接并阅读内容,但我不知道如何访问记录的fs.constants.O_SYMLINK常量,可能是因为我在节点 8 上。

0 投票
1 回答
1332 浏览

linux - 在 git bash in windows ln -s /destinations/path/ link_name 只是复制目标而不是创建链接

在 Git bash 中,我运行了以下命令:

当我检查它是否有效时:

它显示为文件夹而不是符号链接。我正在使用 Windows 并尝试创建指向网络位置的符号链接。这可能是一个简单的解决方法,但我只想要一个快捷方式而不是复制一个庞大的文件夹。

0 投票
1 回答
268 浏览

node.js - 有没有办法确定节点中符号链接的目标路径?

情况

我只是遇到了一个不应该经常发生的奇怪情况,但我想防止它再次发生。

我有一段代码可以创建一个包含源文件夹及其所有子文件夹中所有文件的深入目录列表。

总的来说,直到今天,这从来都不是问题。

我有一个开发人员不小心将子文件夹的符号链接设置为指向父文件夹。这导致我的深潜回避,直到它坠毁。

例如:

我的代码读取了所有文件topfolder,然后topfolder/sub1没有问题地读取了所有文件。然后,由于topfolder/sub2指向topfolder我读取了所有文件topfolder/sub2,这些文件与 intopfoldertopfolder/sub2/sub1thentopfolder/sub2/sub2和 on totopfolder/sub2/sub2/sub2等相同。

我的问题

有没有办法在 node.js 中确定符号链接的目的地?我想如果我可以创建一个我已阅读的文件夹列表,并且当运行到上面的符号链接时,我确定目标确实是一个我已经阅读过的文件夹,然后我就跳过那个文件夹。

提前致谢...

0 投票
0 回答
596 浏览

windows - 为不存在的目录创建符号链接 - Windows

我把它作为我的主目录。

我得到了另一个具有相同结构但具有不同模块的目录。

所需结构

如果没有对每个模块进行符号链接,是否有任何简单的方法可以递归etc_custom/modules_custom安装?etc_core/modules_core

0 投票
1 回答
891 浏览

java - java.nio.file.Files 的哪些方法遵循符号链接,哪些不遵循?

Java 帮助类java.nio.file.Files具有访问文件属性的方法。一些类方法遵循符号链接(所有方法都有LinkOption参数),而对于其他一些方法,不清楚是否遵循符号链接(没有LinkOption参数的方法)。

以下是一些遵循符号链接的方法:

  • Files.isDirectory(Path, LinkOption...)
  • Files.isRegular(Path, LinkOption...)
  • Files.getAttribute(Path, String, LinkOption...)
  • Files.getLastModified(Path, LinkOption...)
  • Files.getOwner(Path, LinkOption...)
  • Files.getPosixFilePermission(Path, LinkOption...)

对于其他一些方法,确定它们是否遵循符号链接并不明显(没有LinkOption...参数,也没有在 javadoc 中提及符号链接):

  • Files.isSymbolicLink(Path)
  • Files.isExecutable(Path)
  • Files.isReadable(Path)
  • Files.isWritable(Path)
  • Files.isHidden(Path)
  • Files.size(Path)
  • Files.getFileStore(Path)

哪些是LinkOption...遵循符号链接的不带参数的方法,为什么?

0 投票
1 回答
180 浏览

perl - perl 符号链接直接目标

我正在寻找简单而正确的方法来获取符号链接的直接目标(不是最终目标)的绝对路径,在perl中。

我的示例树:

代码1:

命令:./script.pl ../dir1/link1

结果:/tmp/perl_script_test/test/../dir1/../dir2/link2

预期的:/tmp/perl_script_test/dir2/link2

我正在寻找符号链接直接目标的绝对路径../

我试过了abs_path()realpath()但他们都给出了最终目标的路径(file.txt

是否有任何内置函数可以做我想做的事情,我需要拆分路径并进行手动连接?

--

莫汉G

0 投票
1 回答
16 浏览

clearcase - 如何签出然后一次复制到符号链接目的地的所有文件?

背景

我正在听从队友的一些指示。这些说明包括一个结帐命令,然后将 .a 文件从 make 命令从一个 vob 复制到另一个 vob。命令是这样给我的:

这应该没有问题正常工作...除了最近该目录中的许多 .a 文件已从文件更改为符号链接。符号链接不是明文元素。因此,这些命令尝试签出,然后复制到各种非明文实体,而不是实际文件。因此我的问题...

问题

如何修改上面的命令来操作符号链接指向的实际文件,而不是符号链接本身?

0 投票
0 回答
28 浏览

php - 如何在laravel中为指向外部链接的目录创建符号链接

我想为我的 laravel 站点媒体链接创建符号链接

例如,我有一个网站 abc.com 有一个带有媒体 url 的图像:

我有 s3 个空间,其中我的 apple.jpg 图像在

所以我想要那个

abc.com/apple.jpg应该从没有链接的空间中获取*digitalocoeanspaces.com/apple.jpg 所以我该怎么做

0 投票
1 回答
301 浏览

lua - 解析lua中的符号链接

我尝试了谷歌搜索,但我发现只有额外的包处理这个(出于各种原因我想避免)。

在 Lua5.3 中,是否有某种方法可以仅使用标准库来解析符号链接,可能是递归的?

我正在寻找相当于:

...只是我的目标上没有“fs”(和必需的“路径”)。

仅使用标准库在纯lua中实现这一点的任何方式?