n8n 날짜 표현식 기본편 : 시간 다루기 입문

목차

    n8n 날짜 표현식 기본편 : 시간 다루기 입문

    리포트 파일명에 "어제 날짜"를 자동으로 넣고 싶습니다. 어떻게 할까요?

    report_{{ $now.minus({days: 1}).toFormat('yyyy-MM-dd') }}.csv — 이 한 줄이면 됩니다.

    이 글을 다 읽으면 "어제", "다음 주 월요일", "이번 달 1일"을 자유롭게 계산할 수 있습니다.

    ① n8n 날짜 변환이 필요한 3가지 상황

    🎭 왜왜씨와 딱딱씨의 대화
    🤔
    왜왜씨

    날짜를 왜 따로 배워야 하나요? 그냥 "오늘" 쓰면 안 되나요?

    🎯
    딱딱씨

    서비스마다 날짜 형식이 달라! "2026-04-05", "04/05/2026", "April 5, 2026"... 자동화하려면 이걸 변환할 줄 알아야 해.

    🤔
    왜왜씨

    아, 그리고 "어제", "내일", "일주일 전" 같은 것도 계산해야 하겠네요?

    🎯
    딱딱씨

    딱 맞아! n8n에서는 Luxon이라는 라이브러리로 이런 날짜 계산을 쉽게 할 수 있어.

    핵심

    날짜 표현식이 필요한 상황
    ✓ API가 요구하는 형식으로 변환
    ✓ 어제/내일/N일 전 계산
    ✓ 시간대(Timezone) 변환

    ② n8n의 날짜 도구 — Luxon

    n8n은 날짜 처리를 위해 Luxon 라이브러리를 내장하고 있습니다.

    Luxon의 핵심 객체

    객체 설명 예시
    DateTime 날짜와 시간 $now, DateTime.now()
    Duration 기간 {days: 7}, {hours: 2}
    Interval 기간 범위 시작~끝 사이

    n8n에서는 $now로 현재 시간을 바로 사용할 수 있습니다!

    ③ n8n $now로 시작 — 현재/어제/내일

    n8n 날짜 변수

    변수 설명 결과 예시
    {{ $now }} 현재 날짜/시간 (DateTime) 2026-04-05T14:30:00
    {{ $today }} 오늘 날짜 (시간 없음) 2026-04-05T00:00:00

    💡 자주 쓰는 날짜 계산

    // 어제
    {{ $now.minus({days: 1}) }}
    
    // 내일
    {{ $now.plus({days: 1}) }}
    
    // 일주일 전
    {{ $now.minus({weeks: 1}) }}
    
    // 한 달 후
    {{ $now.plus({months: 1}) }}
        

    ④ n8n toFormat() — 원하는 형식으로 변환

    날짜를 원하는 형식으로 출력하는 것이 핵심입니다.

    toFormat() 메서드

    표현식 결과 설명
    $now.toFormat('yyyy-MM-dd') 2026-04-05 ISO 형식
    $now.toFormat('MM/dd/yyyy') 04/05/2026 미국 형식
    $now.toFormat('yyyy년 MM월 dd일') 2026년 04월 05일 한국어 형식
    $now.toFormat('HH:mm:ss') 14:30:00 시간만

    형식 기호 정리

    yyyy = 연도 4자리
    MM = 월 2자리
    dd = 일 2자리
    HH = 시간 (24시간)
    mm = 분
    ss = 초

    🎯 딱딱씨의 팁

    n8n Luxon 공식 문서에서 더 많은 형식 기호를 확인하세요!

    ⑤ n8n 날짜 표현식 실전 예제

    💡 예제 1: 어제 날짜로 파일명 생성

    // 결과: report_2026-04-04.csv
    report_{{ $now.minus({days: 1}).toFormat('yyyy-MM-dd') }}.csv
        

    💡 예제 2: 이번 달 1일 구하기

    // 결과: 2026-04-01
    {{ $now.startOf('month').toFormat('yyyy-MM-dd') }}
        

    💡 예제 3: 3일 후 리마인더 시간

    // 결과: 2026-04-08T09:00:00
    {{ $now.plus({days: 3}).set({hour: 9, minute: 0, second: 0}).toISO() }}
        
    핵심 정리

    $now - 현재 시간
    plus/minus - 날짜 더하기/빼기
    toFormat - 원하는 형식으로 변환

    날짜 치트시트

    현재 시간$now
    어제/내일$now.minus({days: 1}) / $now.plus({days: 1})
    형식 변환$now.toFormat('yyyy-MM-dd')

    다음 글 예고

    👉 n8n SQL 기본 이해하기 : 데이터베이스 연동 입문


    $now, plus/minus, toFormat — 이 3가지만 기억하세요.
    날짜 계산의 90%는 이걸로 해결됩니다.

    👉 n8n Set 노드에서 {{ $now.toFormat('yyyy-MM-dd') }}를 입력해보세요

    댓글

    이 블로그의 인기 게시물

    n8n으로 업무 자동화 시작하기 : 왜 필요하고 어떻게 활용할까?

    n8n 데이터 처리 노드 : Set, Split, Merge 완벽 정리

    n8n 트리거 노드 : 3가지 유형으로 자동화 시작하기