如何使用 erlang os:cmd() 删除特殊的 characters/escape 序列?

How to remove special characters/escape squences using erlang os:cmd()?

最近我一直在本地计算机上使用 os:cmd 到 运行 命令。当我使用 os:cmd 时。在我的 output/string 示例中,我不仅得到了上述命令的输出,而且生成的字符串和输出生成或 "inserts" 空格和转义序列:

os:cmd("WMIC BIOS GET SERIALNUMBER")。

产生:

"SerialNumber \r\r\nCN9B4R1 \r\r\n\r\r\n"

我尝试搜索 erlang 文档,但 IO 库中没有任何内容可以联系到我或按铃。

非常感谢你们!

你得到的是命令的完整输出。 os:cmd/1 不包含任何内容。您还必须像在任何其他语言中一样处理输出并删除不需要的字符,因为您得到的正是命令产生的内容。使用 io_libstringlistsre 模块来解析输出。例如使用 string:tokens 你可以检查并获得像

这样的序列号
Output = os:cmd("WMIC BIOS GET SERIALNUMBER"),
["SerialNumber", SerialNumber] = string:tokens(Output, " \r\n").