2016-05-11 12 views
5

Haskellとのシンボリックリンクを作成するには?私の知る限りdirectoryパッケージは、それを行う方法を提供していません。Haskellでシンボリックリンクを作成するには?

+3

[System.Posix.Files.createSymbolicLink](https://hackage.haskell.org/package/unix-2.7.2.0/docs/System-Posix-Files.html#g:9) –

+0

@ n.m。質問が重複していない限り、答えとして投稿してください。 – Mark

+0

どうやら(近い)重複[ここ](http://stackoverflow.com/questions/35369470/what-is-the-command-to-create-a-soft-link-with-haskell-turtle)があります。 –

答えて

10

シンボリックリンクの作成は移植性がありません。たとえば、Windows上のシンボリックリンクの作成は、is re­strict­ed です。そのため、("a basic set of operations for ma­nip­u­lat­ing files and directories in a portable way"(emphasis mine))を提供していません。これは、プラットフォームに依存しないすべてのパッケージに影響します。

プラットフォーム固有のパッケージunixはしかしSystem.Posix.Files with createSymbolicLinkにその機能を提供します。

import System.Posix.Files (createSymbolicLink) 

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

1:それはまたcreateSymbolicLink

0

directory-1.3.1 has

createFileLink :: FilePath -> FilePath -> IO() 

これを実装していない理由unix-compat理由ですはsupですもちろん、Windows上でも動作するようになっています。もちろん、適切なファイルシステムでしか動作しません。

関連する問題