터미널이 처음이라면: 꼭 알아야 할 기본 명령
마우스 없이 글자만으로 컴퓨터를 다루는 일이 낯설게 느껴질 수 있습니다. 리눅스 터미널에서 가장 자주 쓰는 기본 명령과 파이프·리디렉션, 그리고 손을 빠르게 만들어 주는 단축키까지 실제 흐름대로 익혀 봅니다.
왜 필요한가 · 터미널에 적응하지 못하면 리눅스의 거의 모든 작업이 막막하게 느껴지기 때문입니다.
누구에게 · WSL이나 우분투를 막 설치하고 검은 화면 앞에서 무엇을 칠지 몰라 멈춘 입문자
읽고 나면 · 현재 위치 확인부터 파일 다루기, 검색, 파이프·리디렉션, 단축키 활용까지 기본 흐름을 막힘없이 오갈 수 있습니다.
핵심 요약
- 터미널 작업의 대부분은 '어디에 있는지 확인하고, 이동하고, 목록을 보는' 몇 가지 명령으로 이뤄집니다.
- grep·find 로 찾고, 파이프(|)와 리디렉션(>)으로 명령을 연결하면 할 수 있는 일이 크게 늘어납니다.
- Tab 자동완성과 Ctrl+R 기록 검색을 쓰면 입력이 빨라지고 오타가 줄며, rm 은 되돌리기 어려우니 경로를 한 번 더 확인하는 습관이 중요합니다.
터미널을 처음 열면 검은 화면에 깜빡이는 커서만 보입니다. 마우스로 클릭하던 것에 익숙한 사람에게는 이 화면이 낯설고, 무엇을 쳐야 할지 막막합니다. 하지만 매일 쓰는 명령은 생각보다 적습니다. 아래 명령들이 손에 익으면 대부분의 기본 작업을 할 수 있고, 여기에 파이프와 단축키를 더하면 작업 속도가 눈에 띄게 빨라집니다.
지금 내가 어디에 있는가
터미널은 항상 “지금 어떤 폴더 안에 있는지”를 기준으로 동작합니다. 그래서 가장 먼저 익혀야 할 것은 위치를 확인하고 이동하는 명령입니다.
pwd — 현재 위치 확인
pwd(print working directory)는 지금 내가 어느 폴더에 있는지 전체 경로로 보여 줍니다. 파일이 안 보이거나 명령이 엉뚱하게 동작할 때 가장 먼저 쳐 봐야 할 명령입니다.
pwd
ls — 무엇이 있는지 목록 보기
현재 폴더 안에 어떤 파일과 폴더가 있는지 봅니다. 자세한 정보(권한·크기·수정 시각)를 보려면 ls -l, 숨김 파일까지 보려면 ls -a, 둘을 합쳐 ls -la 처럼 쓸 수 있습니다.
ls
ls -l
ls -la
cd — 폴더 이동
원하는 폴더로 들어갑니다. 상위 폴더로 가려면 cd .., 홈으로 한 번에 가려면 cd ~, 바로 직전 위치로 돌아가려면 cd - 를 씁니다.
cd projects
cd ..
cd ~
✍️ 운영자 한마디
개발을 오래 했어도 마우스에 익숙하다 보니, 터미널에서 cd로 옮기고 ls로 확인하는 단순한 흐름이 처음엔 의외로 손에 안 붙었습니다. Tab 자동완성을 알게 된 뒤로 오타가 확 줄었습니다.
파일과 폴더 다루기
mkdir — 폴더 만들기
새 폴더를 만듭니다. 중간 경로까지 한 번에 만들고 싶으면 -p 옵션을 붙입니다.
mkdir my-folder
mkdir -p projects/web/src
touch — 빈 파일 만들기
빈 파일을 즉석에서 만듭니다. 이미 있는 파일이면 수정 시각만 갱신됩니다.
touch notes.txt
cp / mv — 복사와 이동
cp는 복사, mv는 이동입니다. mv는 같은 위치에서 이름만 바꿀 때도 씁니다. 폴더째 복사하려면 cp -r 처럼 재귀 옵션을 붙입니다.
cp notes.txt backup.txt # 복사
cp -r src/ src-backup/ # 폴더째 복사
mv notes.txt archive/ # 이동
mv old.txt new.txt # 이름 바꾸기
rm — 삭제 (주의)
rm은 파일을 지웁니다. 리눅스에서 이 명령은 휴지통을 거치지 않고 바로 삭제하는 경우가 많아, 실행 전에 경로를 한 번 더 확인해야 합니다. 폴더를 지울 때 쓰는 rm -r 은 특히 신중해야 합니다.
rm draft.txt
rm -r old-folder/ # 폴더와 그 안의 내용까지 삭제 — 주의
내용 보기와 검색
cat / less — 파일 내용 보기
cat은 파일 내용을 화면에 한 번에 출력합니다. 내용이 길어 화면을 넘어가면 less로 한 페이지씩 넘겨 보는 편이 편합니다. less에서는 화살표나 스페이스로 넘기고, q로 빠져나옵니다.
cat notes.txt
less long-log.txt
grep — 내용 안에서 찾기
grep은 파일 안에서 특정 단어가 들어간 줄을 찾아 줍니다. 로그에서 원하는 부분만 추리거나, 설정 파일에서 한 줄을 찾을 때 매우 자주 씁니다. -i는 대소문자 무시, -r은 폴더 전체를 뒤지는 옵션입니다.
grep "error" server.log
grep -ri "todo" src/
find — 파일 자체 찾기
grep이 내용을 찾는다면, find는 이름이나 조건으로 파일 자체를 찾습니다.
find . -name "*.txt"
man / —help — 사용법 확인
명령 사용법이 궁금할 때는 외우기보다 직접 찾아보는 습관이 좋습니다.
ls --help
man ls
파이프와 리디렉션으로 명령 잇기
기본 명령에 익숙해지면, 명령끼리 연결하는 두 가지 개념이 작업을 크게 넓혀 줍니다.
- 파이프(
|) 는 앞 명령의 출력을 뒤 명령의 입력으로 넘깁니다. 예를 들어 목록이 너무 길면less로 받아 한 페이지씩 보고, 특정 줄만 추리고 싶으면grep으로 넘깁니다. - 리디렉션(
>,>>) 은 화면에 나올 출력을 파일로 보냅니다.>는 새로 덮어쓰고,>>는 기존 내용 뒤에 덧붙입니다.
ls -l | less # 긴 목록을 한 페이지씩
ls -la | grep ".txt" # 목록 중 .txt 만 추리기
ls -l > files.txt # 출력을 파일로 저장(덮어쓰기)
echo "메모" >> notes.txt # 파일 끝에 한 줄 덧붙이기
손을 빠르게 만드는 단축키
명령 자체만큼이나 입력 습관도 중요합니다. 다음 세 가지만 알아도 체감 속도가 달라집니다.
- Tab — 자동완성: 폴더·파일·명령 이름을 일부만 치고 Tab을 누르면 나머지를 채워 줍니다. 후보가 여러 개면 두 번 눌러 목록을 볼 수 있습니다. 오타와 시간을 크게 줄여 줍니다.
- Ctrl+C — 실행 중단: 명령이 멈추지 않거나 잘못 입력했을 때 현재 동작을 중단합니다.
- Ctrl+R — 명령 기록 검색: 예전에 쳤던 긴 명령을 다시 칠 필요 없이, Ctrl+R을 누르고 일부 단어만 입력하면 과거 명령을 찾아 줍니다.
초보자가 자주 막히는 부분
rm을 가볍게 사용 — 되돌리기 어렵습니다. 특히rm -r이나 경로가 긴 명령은 실행 전에 다시 읽어보세요.- 대소문자 혼동 — 리눅스는
Notes.txt와notes.txt를 다른 파일로 봅니다. - 공백이 있는 이름 — 이름에 공백이 있으면 따옴표로 감싸거나 백슬래시를 써야 합니다. 예:
cd "My Folder". >와>>혼동 —>는 기존 내용을 덮어쓰므로, 덧붙이려던 것이라면>>를 써야 합니다.- 자동완성을 안 씀 — Tab 자동완성을 쓰지 않고 긴 이름을 직접 치다 오타로 막히는 경우가 흔합니다.
기본 명령 체크리스트
pwd·ls·cd로 위치를 확인하고 이동할 수 있다mkdir·touch·cp·mv·rm의 차이를 안다cat·less·grep·find로 내용을 보고 찾을 수 있다- 파이프(
|)와 리디렉션(>)의 개념을 안다 - Tab 자동완성·Ctrl+C·Ctrl+R 을 활용하고 있다
정리
기본 명령은 외워서 쓰는 것이 아니라 손에 익혀 쓰는 것입니다. 처음에는 위치를 확인하고 이동하는 것만 반복해도 충분합니다. 익숙해지면 파일을 다루고, grep·find로 찾고, 파이프와 리디렉션으로 명령을 잇고, 단축키로 속도를 높이는 흐름이 자연스럽게 이어집니다. 다음 단계로는 파일 경로와 권한 개념을 함께 이해해 두고, 자주 쓰는 명령을 짧게 줄이는 방법까지 익히면 좋습니다.
자주 묻는 질문
- 명령을 다 외워야 하나요?
- 외울 필요는 없습니다. 매일 쓰는 명령은 열 개 안팎이라 반복하다 보면 손에 익습니다. 옵션이 기억나지 않으면 명령 뒤에 --help 를 붙이거나 man 명령으로 그때그때 확인하는 편이 더 빠릅니다.
- 실수로 파일을 지웠는데 되살릴 수 있나요?
- 리눅스 터미널의 rm 은 휴지통을 거치지 않고 바로 삭제하는 경우가 많아 기본적으로는 되살리기 어렵습니다. 그래서 중요한 파일은 cp 로 백업해 두거나, 지우기 전에 ls 로 한 번 확인하는 습관이 안전합니다.
이 글은 입문자 기준으로 이해하기 쉽게 정리했으며, 내용은 운영 과정에서 순차적으로 보완될 수 있습니다. 환경에 따라 화면이나 명령이 다르게 보일 수 있으니, 막히는 부분이 있으면 isense2021@gmail.com 로 알려주세요.