2013-03-26 24 views

回答

5

当然,根据输出结果,您可以将其分开。例如:

lines = `ls`.split 

此解决方案与您用于执行程序的方法无关。只要你得到完整的字符串,你可以split它。

+0

是这个工作的感谢。定时器结束时会接受。 – tolgap 2013-03-26 10:40:12

+0

@tolgap没问题。很高兴我能帮上忙。 – 2013-03-26 10:40:28

1

原来的问题是在线上分割,而split函数默认情况下在白色空间上分割。虽然这可能是足够的,则可能需要在正则表达式来传递,如:

`ls -l`.split(/$/) 

其中在阵列中的一个单独的元件返回的每一行。但是,它不会消除最初的回车或换行。对于这一点,你会希望使用map功能迭代这个数组并应用strip每个,如:

`ls -l`.split(/$/).map(&:strip) 
+0

你的方法不如仅使用“分割”。我用'sudo ifquery --list |测试grep -v lo'。你的返回[“eth0”,“eth1”,“”],最后一个令人讨厌。 – user180574 2015-09-09 21:23:43