如何将io.popen的结果写入文件中?

我想将f = io.popen(command)的结果写入文件。是否可以从文件描述符f中完成,还是必须将数据复制到一个新字符串,并通过新的文件描述符将其写入?

原文链接 https://stackoverflow.com/questions/10458313

点赞
stackoverflow用户6236
stackoverflow用户6236

在普通的 Lua 中没有标准的方法来实现这个。但你可以在 command 本身中将输出重定向到文件。(即 io.popen("echo foo | tee bar")os.execute("echo foo >bar"))。

2012-05-05 02:58:55
stackoverflow用户1208078
stackoverflow用户1208078

这是关于如何操作的最简单的方式,如果不知道更多关于你想要做什么的信息...

local fout = io.open("/path/to/file", "w+")
f = io.popen(command)
fout:write(f:read("*a"))
2012-05-05 03:48:41