質問: $i + 1 done なんとなくできるような気はしているのですが、 cutでstr変数に入れた所で一つの文字列と入ってしまっているようで、 正しくループが回せません。(分解した後にecho "${str[1]}" echo "${str[2]}"] などと実行しても空です) 完全案を教えてください。 ■ファイル aaaaaaa=testdata1,bbb=testdata2,ccc=testdata3 aaaaaaa=hhogedata1,bbb=hugahugadata2,ccc=piyopiyodata3 ※aaa=○○,bbb=××,ccc=△△という形式で、各○○の部分の長さは不定。 ※レコード数は不定。
回答: awkを使えばどうでしょうか。 手元にマニュアルが無いので少々正しくないかもしれませんが、シェルから cat $1 | awk \ 'begin {} { split($0,",",ary1) split(ary1[1],"=",ary2) // aaaは先頭という判断です。また配列は1相対だったと思います。 cmd="java testcmd -a " ary2[2] system(cmd) } end {}'