about_Line_Editing

about_Line_Editing

PowerShell 명령 프롬프트에서 명령을 편집하는 방법을 정리한 문서예요. 어디에 커서를 옮길지, 글자를 어떻게 지울지, 줄은 어떻게 추가하는지 — 명령줄을 다룰 때 가장 자주 쓰는 기본기를 하나씩 짚어볼게요.

출처: about_Line_Editing – Microsoft Learn

본문

PowerShell 명령줄에서 명령을 편집할 때 쓸 수 있는 키보드 단축키는 대부분 PSReadLine 모듈이 제공해요. 여기서 다루는 키 바인딩은 Windows 플랫폼의 기본값이고요. 나만의 키 바인딩을 만들고 싶다면 Set-PSReadLineKeyHandler 명령을 쓰면 돼요.

Windows가 아닌 플랫폼에서는 PSReadLine이 기본적으로 Emacs 편집 모드로 동작하는데, 편집 모드는 Set-PSReadLineOption 명령으로 바꿀 수 있어요. PSReadLine에는 Emacs, Vi, Windows 세 가지 편집 모드가 있어요.

지금 어떤 편집 모드인지 확인하려면 Get-PSReadLineOption을, 현재 키 바인딩 목록을 보려면 Get-PSReadLineKeyHandler 명령을 사용해요.

줄 추가하기 (Add a line)

줄을 추가하려면 Shift+Enter를 눌러요. 여러 줄을 연달아 추가할 수도 있고요, 이때 추가된 각 줄은 계속 프롬프트를 뜻하는 >>로 시작해요. 명령을 실행하려면 Enter를 누르면 돼요.

커서를 왼쪽·오른쪽으로 옮기기 (Move left and right)

  • 커서를 한 글자 왼쪽으로: LeftArrow
  • 커서를 한 단어 왼쪽으로: Ctrl+LeftArrow
  • 커서를 한 글자 오른쪽으로: RightArrow
  • 커서를 한 단어 오른쪽으로: Ctrl+RightArrow

줄의 처음·끝으로 이동하기 (Move to a line's beginning or end)

  • 줄의 처음으로: Home
  • 줄의 끝으로: End

줄이 추가된 상태라면 이 키를 두 번 누르면 여러 줄 전체의 처음이나 끝으로 이동해요.

글자 지우기 (Delete characters)

  • 커서 바로 뒤(왼쪽) 글자를 지우려면: Backspace
  • 커서가 위치한 글자를 지우려면: Delete

줄 전체에서 글자 지우기 (Delete characters from a line)

  • 커서 위치부터 줄 끝까지 지우려면: Ctrl+End
  • 커서 위치부터 줄 처음까지 지우려면: Ctrl+Home

줄이 추가된 상태라면 현재 줄과 추가된 줄의 글자들이 함께 지워져요.

삽입·덮어쓰기 모드 (Insert and overstrike mode)

덮어쓰기(overwrite) 모드로 바꾸려면 Insert 키를 눌러요. 다시 삽입(insert) 모드로 돌아가려면 Insert를 한 번 더 누르면 돼요.

탭 완성 (Tab completion)

cmdlet 이름, 매개 변수, 경로를 자동 완성하려면 Tab 키를 눌러요. 값 후보 목록을 하나씩 넘겨가며 보려면 Tab을 다시 누르면 돼요.

더 알아보기