是否可以从Haskell argv
中访问原始main
指针?
我的用例是我想在应用程序启动后删除命令行参数,因此无法通过ps
读取它们。有几种方法可以做到这一点,但都需要操纵原始的argv
。
如果我编写一个C包装并从那里调用hs_init
(之后用argv
ala here进行处理),我就能做到这一点,但是做得更好这来自Haskell。
谢谢!
PS - 此问题与duplicate不同,因为副本使用prctl
,据我所知,只允许您更改进程名称。此外,副本正在寻找“设置”argv[0]
,而我正在尝试获取用于调用该程序的原始argv
的可变引用。
答案 0 :(得分:0)
我会查看System.Posix.Env.ByteString
包中的unix
(link)模块。
它包含修改环境的功能,即使它只提供getArgs
,也不应该添加setArgs
功能。