Bash에서 명령어나 경로를 잘못 입력했을 때, 방향키로 커서를 움직여 오타를 하나하나 고치곤 합니다. Delete나 Backspace를 반복해서 눌러 단어 전체를 지운 뒤 다시 올바르게 입력하는 식으로 말이죠.
하지만 Bash에는 터미널 안을 자유롭게 이동하며 명령어를 신속하게 수정할 수 있는 키보드 단축키가 내장되어 있다는 사실을 알고 계셨나요? 전체를 다시 입력할 필요 없이 말입니다. 지금부터 꼭 익혀두면 좋은 단축키들을 살펴보겠습니다.
활성 라인에서 커서 이동하기
활성 라인의 원하는 위치로 이동하는 방법은 다양합니다. Home 또는 Ctrl + A를 누르면 라인의 맨 앞으로 이동하고, End 또는 Ctrl + E는 그 반대로 커서를 라인 끝으로 보냅니다.
Alt + B를 누르면 한 단어씩 뒤로 이동하며, 반복해서 누르면 라인 시작 방향으로 단어 단위로 점프합니다. 너무 지나쳤다면 반대 기능인 Alt + F를 눌러 앞쪽 단어로 이동하면 됩니다.
활성 라인 편집하기
텍스트를 한 글자씩 지우는 대신 Alt + D를 사용하면 커서 뒤에 있는 단어 전체를 한 번에 삭제할 수 있습니다. 단어의 시작 부분으로 이동할 필요도 없습니다. Alt + Delete를 누르면 반대 방향으로 작동해 커서 왼쪽의 단어를 삭제합니다.
커서 아래 또는 앞의 문자를 지울 때는 여전히 Delete와 Backspace를 가장 많이 쓰겠지만, Ctrl + D와 Ctrl + H 조합도 같은 결과를 낸다는 점은 기억해 둘 만합니다. 좀 더 과감한 삭제가 필요하다면 Ctrl + W를 사용하세요. 커서 앞쪽의 모든 내용을 지우고 커서 뒤는 그대로 유지됩니다. Ctrl + K는 그 반대로 커서 뒤의 모든 내용을 삭제합니다.
오타 교정하기
두 단어의 순서를 반대로 입력했다면, 지웠다가 다시 입력하는 대신 두 번째 단어에 커서를 두고 Alt + T를 누르세요. 해당 단어가 바로 앞의 단어와 자리를 바꿉니다.
두 글자만 순서가 바뀌었다면, 두 번째 글자에 커서를 놓고 Ctrl + T를 누르면 앞 글자와 자리를 바꿀 수 있습니다.
절대 경로처럼 대소문자 구분이 중요한 명령어를 다룰 때는 Alt + U를 활용해 보세요. 단어 위에서 누르면 커서 위치부터 단어 끝까지의 모든 문자가 대문자로 변환됩니다. Alt + L은 반대로 해당 문자들을 소문자로 바꿔 줍니다.
알아두면 유용한 추가 팁
Bash는 Tab 키만 누르면 입력 중인 명령어와 경로를 자동 완성해 줄 정도로 똑똑합니다. 예를 들어 "/home/username/Pic"이라고 입력했는데 Tab을 눌러도 "/home/username/Pictures"로 완성되지 않는다면, 같은 경로에 비슷한 이름의 폴더(예: "/home/username/Picachu")가 함께 존재할 가능성이 큽니다. Bash가 임의로 선택해 주지는 않으므로, 원하는 경로를 알려주려면 한두 글자를 더 입력해야 합니다.
경로 안에 무엇이 있는지 기억나지 않는다면 Tab을 한 번 더 눌러보세요. 입력한 경로와 일치하는 파일과 디렉터리 목록이 화면에 표시됩니다.
Bash는 입력한 명령어 기록도 저장합니다. 키보드의 위·아래 방향키로 이전 명령어를 넘겨볼 수 있고, Ctrl + P를 누르면 직전 명령어를 다시 불러오며 반복해서 누르면 기록을 계속 거슬러 올라갈 수 있습니다. 반대 방향으로 이동하려면 Ctrl + N을 사용하세요. 참고로 명령줄 기록을 더 효율적으로 검색하는 방법도 따로 있습니다.
마지막으로, 터미널 화면이 문자와 명령어로 어질러졌다면 clear를 입력하고 Enter를 눌러 깨끗한 상태로 초기화할 수 있습니다. Ctrl + L 단축키도 동일한 효과를 냅니다.
이미 익숙한 명령어의 오타를 고치는 데서 한 걸음 더 나아가 명령어 활용 범위를 넓히고 싶다면, 새로운 명령어를 쉽게 기억하는 데 도움이 되는 몇 가지 방법을 활용해 보세요.