Jekyll 포스트 카테고리를 수정하며

서막

블로그에 카테고리들이 많아지면서 하나로 묶어야할 필요성을 느꼈다.

물론 그러러면 게시글들을 일일이 수정해야해서 좀 귀찮아서 미루다가 오늘 드디어 작업을 하기로 마음먹었다.

그런데, 일상이나 프로그래밍 언어들이야 게시글이 몇개 안되니까 일일이 손으로 수정해도 괜찮았는데,

스크린샷 2020-05-23 오후 11 55 47

스프링의 경우 100개가 넘는 게시글들의 내용을 손으로 수정하는 것에 한계가 있었다.

직접 할까.. 하다가 너무 귀찮아서 차라리 코드를 짜보자!하고 열심히 구글링을 해서 파이썬으로 간단한 파일 내용 수정 코드를 만들었다.

오늘은 그 내용을 공유해보려고 한다.

소스코드

해당 코드는 md 본문에 포함된 categoriesspringframework로 바꾸는 코드이다.

이 코드의 흐름은 다음과 같다.

특정 문자열이 포함된 파일들을 읽고 해당 파일의 본문에서 특정 문자열이 포함된 라인의 내용을 수정하는 코드이다.

import os
import fileinput
import sys

# 바꾸려는 파일이 포함된 폴더의 절대경로를 명시
folderPath = "/Users/kakao/Downloads/minkukjo.github.io/_posts/"

for _, dirs, files in os.walk(folderPath):
    for fname in files:
        # 전체 파일을 읽어옴. Spring이 포함된 파일만 수정할 것
        if 'Spring' in fname:
            # fileinput은 파일의 특정 부분을 수정하기 위한 라이브러리, inplace=True여야지만 작동
            for line in fileinput.input(folderPath + fname, inplace=True):
                # categories가 포함된 줄에서 해당 줄을 "categories: framework"로 변경하게 수정
                if 'categories' in line:
                    line = line.replace(line, 'categories: framework\n')
                sys.stdout.write(line)

후기

before banner-image

역시 귀차니즘은 개발자를 성장시키는 좋은 덕목이라는 것을 다시 한번 느꼈다.



© 2022. by minkuk

Powered by minkuk