[BASH Shell ] 숫자 자릿수 0으로 채우기
(00, 01, 02 ....)
숫자 앞자리를 0으로 채우고자 할 경우 seq 명령어를 이용하여 쉽게 채울 수 있다.
usage case1. $ seq [option] LAST_NUM
usage case2. $ seq [option] FIRST_NUM LAST_NUM
usage case3. $ seq [option] FIRST_NUM INCREMENT LAST_NUM
option
option |
description |
-f |
포맷방식 , ex) %03g 를 사용하면 000, 001 .....) |
-w |
마지막 숫자 자릿수에 맞게 0을 채움 |
-s |
숫자 사이에 특정 구분자/분리기호를 추가 (default: \n, 줄바꿈) |
-f 옵션
"-f" 옵션을 사용하여 특정 자릿수까지 0으로 채울 수 있다.
: "%03g"를 하면 세자리수이고, "%02g"하면 두자리수이다.
옵션뒤에 숫자를 하나만 지정할 경우 아래와 같이 해당 숫자까지만 출력한다.
$ seq -f "%03g" 5
001
002
003
004
005
옵션뒤에 숫자 두가지(?)를 입력할 경우 하나만 입력한 것과 비슷한 결과를 출력할 수 있지만 시작되는 숫자를 지정할 수 있다.
$ seq -f "%03g" 1 5
001
002
003
004
005
옵션뒤에 숫자 세가지(?)을 입력하면 순서대로 시작 숫자, 증가 수 , 마지막 숫자이며
1 2 10을 입력하면 1부터 시작하여 2씩 증가되어 출력된다.
$ seq -f "%03g" 1 2 10
001
003
005
007
009
-w 옵션
"-w"옵션은 "-f" 과 비슷한 출력을 하지만 별도의 포맷이 필요하지 않다.
단, 마지막 숫자의 자릿수에 따라서 0을 채울 수도 없을 수도 있다.
마지막 숫자가 한자리 일 경우
$ seq -w 1 5
1
2
3
4
5
마지막 숫자가 두자리인 경우
$ seq -w 1 10
01
02
03
04
05
06
07
08
09
10
-s 옵션
"-s"옵션은 사용하지 않을 경우 기본적으로 줄바꿈이 된다.
해당 옵션을 사용할 경우 아래와 같이 구분자 또는 분리 기호처럼 사용할 수 있다.
여기서는 "t"를 구분자/분리기호로 사용했다.
$ seq -s "t" -w 1 5
1t2t3t4t5
'Development > Bash Shell script' 카테고리의 다른 글
[BASH Shell] Shell script사용자 입력 받기 - backspace 키 사용하기 (0) | 2022.04.06 |
---|---|
[BASH Shell] case 문( 활용 포함) (0) | 2022.04.05 |
[BASH Shell] shell script 사용자 입력 받기 (input user keyboard) (0) | 2022.01.11 |
[BASH Shell] shell script 주석(한줄 주석/여러줄(블럭단위) 주석) (0) | 2019.05.03 |
[BASH Shell ] 문자열 길이 구하기 (0) | 2018.09.18 |