我想在 Windows 上的 R 中创建一个指向文件的软符号链接(symbolic link)(使用 Mklink )。它失败了,因为我无法告诉 R “以管理员身份运行它”。有什么办法可以做到这一点吗?
但是,我确实设法创建了硬符号文件链接:
path_src <- file.path(tempdir(), "test.txt")
write("Hello World!", file = path_src)
path_tgt <- file.path(tempdir(), "test_symlink.txt")
shell(sprintf("mklink /H %s %s",
normalizePath(path_tgt, mustWork = FALSE),
normalizePath(path_src)
))
请注意 path_tgt
处的文件如何反射(reflect)对 path_src
所做的更改:
write("HELLO WORLD!", file = path_src, append = TRUE)
然而,这失败了:
path_tgt_2 <- file.path(tempdir(), "test_symlink_2.txt")
> shell(sprintf("mklink /D %s %s",
normalizePath(path_tgt_2, mustWork = FALSE),
normalizePath(path_src)
))
Ihre Berechtigungen reichen nicht aus, um diesen Vorgang auszufhren.
Warning messages:
1: running command 'C:\Windows\system32\cmd.exe /c mklink /D C:\Users\Thyson\AppData\Local\Temp\Rtmpum73ZU\test_symlink_2.txt C:\Users\Thyson\AppData\Local\Temp\Rtmpum73ZU\test.txt' had status 1
2: In shell(sprintf("mklink /D %s %s", normalizePath(path_tgt_2, mustWork = FALSE), :
'mklink /D C:\Users\Thyson\AppData\Local\Temp\Rtmpum73ZU\test_symlink_2.txt C:\Users\Thyson\AppData\Local\Temp\Rtmpum73ZU\test.txt' Ausführung mit Fehlerkode 1 fehlgeschlagen
注意
由于 Windows 是德语版本,我似乎无法收到英语错误。第一行的意思是“您没有足够的授权来执行此过程”
最佳答案
以管理员身份运行 R。然后,当您从 R 中运行“Mklink”时,您就是管理员。
其实,你也可以使用R函数file.symlink来创建符号链接(symbolic link)。
关于r - 在 Windows 上从 R 创建软符号链接(symbolic link),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28838859/