Ruby 《厨师》中的mixlib shellout有什么特别之处?

Ruby 《厨师》中的mixlib shellout有什么特别之处?,ruby,chef-infra,Ruby,Chef Infra,报告相当有力地指出: 始终使用mixlib shellout进行shell输出。永远不要使用backticks、Process.spawn、popen4或其他任何东西 不幸的是,这并不能解释为什么这些替代方案不受欢迎。这里是否存在一些与从不使用gets相同的隐患,或者mixlib shellout是否有更好的功能集/接口/etc?更好的功能、环境变量管理、更好的捕获输出方式、更好的返回代码处理。这个列表很长,+事实上它在unix或windows下干净地处理运行命令,在unix下处理Win32 A

报告相当有力地指出:

始终使用mixlib shellout进行shell输出。永远不要使用backticks、Process.spawn、popen4或其他任何东西


不幸的是,这并不能解释为什么这些替代方案不受欢迎。这里是否存在一些与从不使用gets相同的隐患,或者mixlib shellout是否有更好的功能集/接口/etc?

更好的功能、环境变量管理、更好的捕获输出方式、更好的返回代码处理。这个列表很长,+事实上它在unix或windows下干净地处理运行命令,在unix下处理Win32 API,在windows下处理其他人没有的命令。对我来说,这听起来是一个离题的问题,因此在评论中提供了线索,而不是作为答案。编辑:我或多或少说了和@Tensibal一样的话,也许这对服务器故障会更好,但是谢谢你的帮助。你在回答我的潜在危险方面超越了mixlib shellout自述,还是只是逐步提高?问题