Claude가 쓴 PowerShell 스크립트에 대시 문자가 섞여 오류 발생
AI 도구 Claude가 코드를 작성할 때 일반 하이픈(-) 대신 '긴 대시'(—)를 쓰는 버릇이 있어, PowerShell 스크립트가 실행 오류를 일으킵니다. 코드에서는 하이픈과 긴 대시가 눈으로 보기엔 비슷하지만 컴퓨터는 전혀 다른 문자로 처리합니다. Claude로 스크립트를 생성하면 이 문제가 반복적으로 나타난다고 사용자들이 보고하고 있습니다.
Claude는 문장을 자연스럽게 쓰기 위해 긴 대시(em dash, —)를 자주 사용하는 경향이 있습니다. 글쓰기에서는 문제없지만, 코드에서는 치명적입니다. PowerShell을 포함한 대부분의 프로그래밍 언어에서 명령어 옵션은 반드시 일반 하이픈(-)으로 시작해야 합니다. Claude가 생성한 코드에 긴 대시가 섞이면 스크립트를 실행할 때 '알 수 없는 문자' 오류가 발생하고, 문제의 원인을 찾기가 어렵습니다.
특히 코드 편집기에서 두 문자가 비슷하게 보이기 때문에 초보자는 오류 원인을 찾는 데 시간을 낭비하기 쉽습니다. 해결 방법은 Claude에게 코드를 생성할 때 '하이픈만 사용하라'고 명시적으로 지시하거나, 생성된 코드를 붙여넣기 전에 텍스트 편집기로 긴 대시를 하이픈으로 일괄 교체하는 것입니다.
핵심 포인트
- Claude가 생성한 PowerShell 스크립트에서 긴 대시(—)가 하이픈(-) 자리에 들어가 실행 오류가 반복 발생한다.
- 눈으로는 비슷해 보여도 컴퓨터는 두 문자를 완전히 다르게 처리한다.
- 프롬프트에 '코드에는 반드시 하이픈(-)만 사용해'라고 명시하면 예방할 수 있다.
- 코드를 붙여넣기 전에 긴 대시를 하이픈으로 찾아바꾸기(일괄 교체)하는 것도 효과적이다.
- PowerShell 외에 bash, Python 등 다른 스크립트 언어에서도 같은 문제가 생길 수 있다.
용어 한 줄 설명
- AI 도구
- 사람의 일을 도와 글, 코드, 이미지 등을 만들어 주는 소프트웨어입니다.
- PowerShell
- Windows에서 컴퓨터를 자동으로 제어하거나 반복 작업을 처리하기 위해 쓰는 명령어 프로그램입니다.
- 스크립트
- 반복 작업을 자동으로 처리하게 만든 작은 프로그램입니다.
- em dash
- 글에서 강조나 구분을 위해 쓰는 긴 가로선 문자(—)로, 코드에서 쓰는 짧은 하이픈(-)과는 다른 문자입니다.
- 프로그래밍 언어
- 사람이 컴퓨터에게 일을 시키기 위해 쓰는 규칙과 문법입니다.
- 코드 편집기
- 소프트웨어를 만들 때 사용하는 전문적인 메모장 같은 프로그램입니다.
- Bash
- 터미널에서 명령을 실행하는 프로그램입니다.
- Python
- 코드가 영어 문장처럼 읽혀 초보자도 배우기 쉬운 프로그래밍 언어입니다.