3

私はこれを含むテキストファイルを持っています:

Hello 4
Bye 2
Toto 2

そして、各行の最初の文字列を MyArray1 に、整数を別の MyArray2 に入れたいと思います。

と書いたのですが、うまくいきません。

#!/bin/bash

countline=$(awk '{ print $1 }'  test | wc -l)


for ((i=0; i<$countline ;i=i+1))

    do

        MyArray1[$i]=awk '{ print $1 }'  test
done


for ((i=0; i<$countline ;i=i+1))

    do

        MyArray2[$i]=awk '{ print $2 }'  test
done

私を助けてください。

4

2 に答える 2

2

複雑にしないでおく:

MyArray1=( $(awk '{ print $1 }' test) )
MyArray2=( $(awk '{ print $2 }' test) )

awk の出力を反復してループする必要はなく、上記のように配列を直接作成できます。

于 2013-07-09T19:35:55.157 に答える