如何使用Haskell创建符号链接(symbolic link)?据我所知,directory包没有提供执行此操作的方法。

最佳答案

创建符号链接(symbolic link)是不可移植的。例如,在Windows上的创建符号链接(symbolic link)is re­strict­ed1。因此,它不适合提供"a basic set of operations for ma­nip­u­lat­ing files and directories in a portable way"(强调我的)的directory。这会影响所有独立于平台的软件包。

特定于平台的软件包 unix 通过 System.Posix.Files with createSymbolicLink 提供了该功能:

import System.Posix.Files (createSymbolicLink)

main :: IO ()
main = createSymbolicLink "/opt/ghc/7.10.3" "/opt/ghc/active"

1:这也是unix-compat不实现 createSymbolicLink 的原因

10-04 15:29