确定执行脚本的名称

ace*_*007 2 haskell

在haskell中,我将如何获取并打印执行脚本的名称?此外,因为我在这里当我使用一些代码列出目录内容并在控制台(GHCi)打印出来时我得到以下结果"[]"从我对其他语言的了解我会认为是因为它返回一个数组但是打印应该打印阵列,不是吗?

这是在Windows上

Sat*_*vik 6

我认为,getProgNameSystem.Environment应该这样做,但你应该检查它是Windows的便携性.

"[]"是空列表.您可以使用getDirectoryContentsSystem.Directory.

Prelude System.Directory> getDirectoryContents "."
["hist","parse.hs","b.hs","d.hs","qsort.hs"]
Run Code Online (Sandbox Code Playgroud)

  • 是的,因为你在ghci中使用它.尝试在编译和运行的haskell程序中使用它. (5认同)

sha*_*ang 5

System.Environment模块用于访问有关系统环境的信息,例如getProgName返回可执行文件的名称.

结果[]是一个空列表,因此您似乎正在尝试列出空目录的内容.