コロンで区切られた値のリストをキー=値のペアに変換する[閉じる]

コロンで区切られた値のリストをキー=値のペアに変換する[閉じる]

テキストから次の例の行を読むには、bashスクリプトまたはpythonスクリプトが必要です。

1:2:3:4
4:3:2:1

そしてそれを新しいテキストファイルに書き込むと、出力は次のようになります。

A=1
B=2
C=3
D=4

A=4
B=3
C=2
D=1

答え1

Awk解決策:

awk 'BEGIN{
         abc = "ABCDEFGHIJKLMNOPQRSTUVWXYZ";
         split(abc, letters, "")
     }
     {
         for (i = 1; i <= NF; i++) print letters[i] "=" $i;
         print "" 
     }' FS=':' input.txt > newfile

newfileコンテンツ:

A=1
B=2
C=3
D=4

A=4
B=3
C=2
D=1

答え2

awk -F: '{ print "A=" $1 "\nB=" $2 "\nC=" $3 "\nD=" $4 "\n"; }' inputfile

またはバッシュから

while IFS=: read -r a b c d rest; do
    printf 'A=%d\nB=%d\nC=%d\nD=%d\n\n' $a $b $c $d
done <inputfile

関連情報