最近我一直在使用os:cmd在我的本地计算机上运行命令。当我使用os:cmd。我不仅获得了所述命令的输出,而且结果字符串和输出在我的输出/字符串示例中生成或“插入”空格并转义序列:
os:cmd(“WMIC BIOS GET SERIALNUMBER”)。
产地:
“SerialNumber \ r \ n \ r \ nNCN9B4R1 \ r \ r \ n \ r \ n \ r \ n”
我尝试搜索erlang文档,但IO lib中没有任何内容可以触及我或铃声。
非常感谢你们!
答案 0 :(得分:4)
你得到的是命令的完整输出。 os:cmd/1
并不包含任何内容。您必须像处理任何其他语言一样处理输出并删除不需要的字符,因为您获得的正是命令生成的内容。使用io_lib
,string
,lists
或re
模块解析输出。例如,使用string:tokens\2
,您可以检查并获取序列号,如
Output = os:cmd("WMIC BIOS GET SERIALNUMBER"),
["SerialNumber", SerialNumber] = string:tokens(Output, " \r\n").