
bashスクリプトを使用して、multipath -llの出力をcsv型ファイルにソートしたいと思います。たとえば、 #multipath -ll は次のような出力を提供します。
360060e80056fc30000006fc30000513c dm-41 HITACHI,OPEN-V
\_ 4:0:0:45 sdcm 69:160 [active][ready]
\_ 3:0:0:45 sdcn 69:176 [active][ready]
360060e80056fc30000006fc300005162 dm-31 HITACHI,OPEN-V
\_ 3:0:0:36 sdbu 68:128 [active][ready]
\_ 4:0:0:36 sdbv 68:144 [active][ready]
360060e80056fc30000006fc300005127 dm-56 HITACHI,OPEN-V
\_ 3:0:0:6 sdg 8:96 [active][ready]
\_ 4:0:0:6 sdt 65:48 [active][ready]
私が望むのは、この形式のcsvファイルを作成することです。
LUN ID no., SCSI DEVICE1, SCSI DeVICE2
360060e80056fc30000006fc300005127,sdg,sdt
360060e80056fc30000006fc300005162,sdbu,sdbv
スクリプト全体ではなく、これを達成する方法の基本的なアイデアを探しているだけです。どんな助けでも大変感謝します。
答え1
> awk '/^[^ ]/ {printf "\n%s",$1; next}; { printf ",%s",$3; }' file
360060e80056fc30000006fc30000513c,sdcm,sdcn
360060e80056fc30000006fc300005162,sdbu,sdbv
360060e80056fc30000006fc300005127,sdg,sdt