スポンサーリンク

コマンドの実行結果を配列に格納する

下記の形式で書くことにより、コマンドの実行結果をarrayに格納することができます。

array=($(コマンド))

下記に、grepの結果を配列に格納する方法を書いてみたいと思います。

サンプルコードと実行結果も貼っています。
よろしければご参考ください。

スポンサーリンク

grepで検索された行を配列に格納する方法

例えば、ファイルin.txtをgrepして"target"の文字列にマッチした行を、配列arrayに格納するためには下記のように書きます。

array=($(grep "target" in.txt))

サンプルコード

例えば、下記のようにin.txtがあったとします。

下記がサンプルコードになります。
ファイルin.txtをgrepして"target"の文字列にマッチした行を、配列arrayに格納しています。
その後、echoで配列の中身を表示しています。

下記が実行結果となります。

配列の参照方法

上記サンプルコードのechoの部分について補足説明です。
配列の先頭の値が出力されます。

配列の全要素が出力されます。

下記のようにindexを指定して出力できます。
index=0の配列の要素が出力されます。

index=1の配列の要素が出力されます。

index=2の配列の要素が出力されます。

for文で配列の要素を順に取得して変数iに格納し、echoで出力しています。




その他:grepの-oオプションで検索にマッチした部分のみ配列に格納
grepに-oオプションを付けることで、検索にマッチした部分のみ配列に格納することもできます。

下記に-oオプションを付けたサンプルコードを書いています。
正規表現と組み合わせると便利に使うことができます。
参考:grepの-oオプションで検索にマッチした部分のみ出力

エンジニアのスキルを活かして、理想の働き方を求めていこう

エンジニアとして新しい働き方を求める方へ、MIDWORKS

MIDWORKSは、週3日から可能な案件も紹介していて、フレキシブルな働き方を求めるにとってはおすすめです。

MIDWORKS

MIDWORKSでは、万が一仕事が途切れてしまった場合の給与保証制度があります。 給与保証制度を適用している場合は、仕事が見つからなかった時に月額契約単価の80%を日割りで受け取ることができます。
安定した収入を求めるフリーランスにとっては、安心して案件を探すことができると言えます。

MIDWORKSに無料会員登録する

開発言語に応じた案件を探すことができるので、 自身のスキルアップの機会として、案件を探すのも有効な手だと思います。

スポンサーリンク