nodejs로 개발중인데 console.log 사용해서 로그 프린트하는데 한글이 깨진다.

이유는 powershell에서 UTF8 설정이 안되어있어서 그렇단다.

이 문제 때문에 30분 정도 허비한 것 같다.

맨날 맥에서만 하다가 윈도우에서 하니까 별 이사한 이슈가 다 발생하는 구만.

1. PowerShell 프로파일 경로 확인

먼저 프로파일 파일의 위치를 확인합니다. PowerShell에서 다음 명령어를 실행하세요:

$PROFILE

출력 예시:

C:\\Users\\<사용자 이름>\\Documents\\WindowsPowerShell\\Microsoft.PowerShell\_profile.ps1

이 경로가 PowerShell 프로파일 파일의 기본 위치입니다.


2. 프로파일 파일 생성

프로파일 파일이 없다고 나오면 직접 파일을 생성해야 합니다. 다음 명령어를 실행하세요:


New-Item -Path $PROFILE -ItemType File -Force
  • -Force 옵션은 파일이 이미 있을 경우 덮어쓰지 않고 유지합니다.
  • 이 명령을 실행하면 지정된 경로에 프로파일 파일이 생성됩니다.

3. 프로파일 파일 열기

생성된 프로파일 파일을 열어서 설정을 추가합니다. 다음 명령어를 실행하세요:


notepad $PROFILE

4. UTF-8 인코딩 설정 추가

notepad에서 열리는 프로파일 파일에 다음 내용을 추가합니다:


\[Console\]::OutputEncoding = \[System.Text.Encoding\]::UTF8

저장하고 닫습니다.


5. PowerShell 재시작

PowerShell을 닫고 다시 실행하면 설정이 적용됩니다.


6. 설정 확인

PowerShell이 제대로 UTF-8로 설정되었는지 확인하려면 다음 명령을 실행하세요:


\[Console\]::OutputEncoding

출력 예시:

BodyName : utf-8 EncodingName : Unicode (UTF-8) ... CodePage : 65001

추가 참고

  • **다른 PowerShell 버전 (예: PowerShell Core, Windows PowerShell)**을 사용하는 경우 PROFILE 경로가 다를 수 있습니다. 각 버전에 대해 $PROFILE 값을 확인하고 해당 경로에 파일을 생성해야 합니다.

+ Recent posts