如何读取root用户目录中的文件

时间:2017-03-26 00:08:09

标签: haskell io

我有以下代码:

main = do
    contents <- readFile "~/.todos"

然而,它告诉我〜/ .todos 不存在,即使我刚刚创建它。这个Haskell程序保存到我的桌面(直接在根目录中),所以我可以使用 ../。todos ,这样可以正常工作 - 除了我希望程序是这样的能够从计算机上的任何地方运行。

TL; DR

我基本上只需要一种方法来读取root文件的内容。

2 个答案:

答案 0 :(得分:5)

Re:您对Steve Harris' answer的评论:

  

您知道是否可以从Haskell获取主目录的名称?

您可以使用getHomeDirectory from System.Directory

答案 1 :(得分:4)

〜是主目录的捷径,通常只能被shell识别。对于应用程序,您将需要使用主目录的绝对路径。它将类似于:/ home / jqtester

您可以通过以下方式找到它:

$ cd ~
$ pwd

或者一些shell,只需查看可能反映当前目录的提示本身。