값이 12자이면 0을 추가합니다.

값이 12자이면 0을 추가합니다.

파일에서 다른 값을 가진 열을 추출하고 있는데 그 중 일부는 11~13자인데 값이 11일 때마다 앞에 0을 추가해야 합니다.

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/' | ...

관련 정보