値が12文字の場合は0を追加します。

値が12文字の場合は0を追加します。

ファイルから別の値を持つ列を抽出していますが、そのうちのいくつかは11〜13文字ですが、値が11の場合は常に前にゼロを追加する必要があります。

awk -F, '{print $1 }' $FILE | \
 awk '{printf("%04d%s\n", NR, $0)}' | \
 awk '{printf("%-12s\n", $0) }'

82544990078
82544990757
899188001738
9337402002723
9337402002686
9337402002747
812153010733
852271005003
89000118359

次のようにする必要があります。

082544990078
082544990757
899188001738
9337402002723
9337402002686
9337402002747
812153010733
852271005003
089000118359

答え1

次の目的で使用できますawk

$ awk 'length() == 11 { $0 = "0" $0 } 1' < input
082544990078
082544990757
899188001738
9337402002723
9337402002686
9337402002747
812153010733
852271005003
089000118359

答え2

... | sed 's/^(.\{11,11\})$/0\1/' | ...

関連情報