シェルから数行の文字列を取得しています。Array
各行がその要素であるを取得することは可能ですか?
質問する
5471 次
2 に答える
9
確かに、出力に応じて、それを分割することができます。例えば:
lines = `ls`.split
このソリューションは、プログラムの実行に使用している方法とは無関係です。完全な文字列を取得する限り、それを実行できsplit
ます。
于 2013-03-26T10:35:17.690 に答える
6
元の質問は行で分割されていましたが、split
関数はデフォルトで空白で分割されます。それで十分かもしれませんが、次のように正規表現を渡すこともできます。
`ls -l`.split(/$/)
これは、配列内の個別の要素の各行を返します。ただし、最初のキャリッジリターンまたはラインフィードは削除されません。そのためには、次のように、map
関数を使用して配列を反復処理し、strip
それぞれに適用する必要があります。
`ls -l`.split(/$/).map(&:strip)
于 2015-03-16T18:38:51.930 に答える