• 카테고리
    • 전체 글

    • 카테고리1
    • 카테고리2
    • 카테고리3
    • 카테고리4
  • 태그
  • 방명록

Jenkins 빌드 결과물 파일명 "0" 패딩(채우기)하기

카테고리 없음 2023. 12. 20. 16:20

Jenkins를 이용해 자동으로 빌드하고, 빌드한 결과물은 Zip으로 압축하여 제공한다.
여기서 빌드 결과물 파일에는 BUILD_NUMBER 값을 이용해 파일명을 만들고 있다.

SET FILENAME=MYSELF_%BUILD_NUMBER%.zip

문제는 저 BUILD_NUMBER 부분인데, 이게 1부터 시작해서 빌드 될 때마다 자동으로 1씩 더해지는 값이다.

그러다보니, File Sort를 해보면, 아래 처럼 될 때가 있다.

MYSELF_1.zip
MYSELF_10.zip
MYSELF_11.zip
MYSELF_2.zip
MYSELF_3.zip
MYSELF_4.zip
MYSELF_5.zip
MYSELF_6.zip
MYSELF_7.zip
MYSELF_8.zip
MYSELF_9.zip

요즘은 운영체제가 좋아지기도 했고, 파일관리도구들도 지능적이여서, 저 숫자부분만 떼서 Sort를 해주기도 하지만, 기본적인 String Sort로 하게되면 저렇게 된다.

방법은 저 파일명의 숫자부분 앞에 "0"을 채우면 된다.

그러니까...

MYSELF_0001.zip
MYSELF_0002.zip
MYSELF_0003.zip
MYSELF_0004.zip
MYSELF_0005.zip
MYSELF_0006.zip
MYSELF_0007.zip
MYSELF_0008.zip
MYSELF_0009.zip
MYSELF_0010.zip
MYSELF_0011.zip

위와 같이 만들 수 있다.

이를 위해서는 Jenkins 빌드 후 파일명 만들 때 다음과 같이 만들면 된다.

SET PADDED_BUILD_NUMBER=000%BUILD_NUMBER%
SET PADDED_BUILD_NUMBER=%PADDED_BUILD_NUMBER:~-4%

SET FILENAME=MYSELF_%PADDED_BUILD_NUMBER%.zip

굳이 설명하자면,

1번째 줄에서는 BUILD_NUMBER라는 값 앞에 "000"을 붙인다.
1이면 0001이든, 951이면 000951 같이 된다.

2번째 줄에서는 뒤에서 4글자만 뽑는다.
0001 이면 0001, 000951 이면 0951 식으로 4글자만 뺀다.

그리고 나머지 줄에서는 그렇게 만든 4글자짜리 BUILD_NUMBER를 이용해, 파일명을 만든 것이다.

핵심은....

:~-4

이다.

%{환경변수 이름}:~{+ 앞에서부터, - 뒤에서 부터}{추출할 갯수}%

 

728x90
저작자표시 (새창열림)
블로그 이미지

하인도1

[하인드/하인도/인도짱 의 홈페이지] 저만의 공간입니다. 다양한 소재들을 나열하는 아주 단순 무식한 홈페이지 입니다. 다양한 문서 자료도 있겠지만, 저의 푸념들도 있답니다.

250x250

블로그 내에 소스 코드 삽입 이사온 기념 스킨도... RSS 전문 기능 비활성화 관련. 스킨 바꾸어 보았습니다. 서버 파일 정리 좀 했습니다.

«   2025/05   »
일 월 화 수 목 금 토
1 2 3
4 5 6 7 8 9 10
11 12 13 14 15 16 17
18 19 20 21 22 23 24
25 26 27 28 29 30 31

2010 windows 매뉴얼 개발환경 me2photo 수 java moss 오류 twi2me 협업 것 비스킷 불만 블로그 SharePoint me2dayzm 친구 MOSS 2007 Azure 인터파크 좀 e-book 지름신 Buscuit Google Apps Engine WSS me2sms Visual Studio Tutorial

  • Total :
  • Today :
  • Yesterday :

Copyright © 2015-2025 Socialdev. All Rights Reserved.

Copyright © 2015-2025 Socialdev. All Rights Reserved.

티스토리툴바