리눅스를 처음 접하는 사용자라면, 터미널에서 자주 사용하는 명령어들과 텍스트 편집 도구인 vi 에디터의 기본 사용법을 익히는 것이 중요하다. 본 글에서는 vi의 핵심 사용법을 간략히 소개하고, 리눅스에서 자주 사용하는 명령어들과 함께 유용한 옵션들을 정리한다.
📝 vi 에디터 간단 사용법
vi는 총 3가지 모드를 가지고 있으며, 이들 간의 전환을 통해 다양한 편집 작업을 수행할 수 있다.
모드 |
설명 |
명령 모드 |
기본 모드. 커서를 이동하거나 명령을 실행할 수 있음 |
입력 모드 |
실제로 텍스트를 입력할 수 있는 모드 |
명령행 모드 |
저장, 종료 등 파일과 관련된 명령을 입력하는 모드 |
🔁 모드 전환 방법
현재 모드 |
전환할 모드 |
입력 |
키설명 |
명령 모드 |
입력 모드 |
i, a, o 등 |
텍스트 입력 가능해짐 |
입력 모드 |
명령 모드 |
Esc |
입력 종료, 명령 대기 상태로 전환 |
명령 모드 |
명령행 모드 |
: |
저장, 종료 등 명령어 입력 가능 |
🛠️ vi 시작 및 종료 명령
명령어 |
설명 |
vi 파일명 |
해당 파일을 열고 vi 실행 |
:w |
현재 편집 내용을 저장 |
:q |
에디터 종료 |
:q! |
저장하지 않고 강제 종료 |
:wq 또는 ZZ |
저장 후 종료 |
:x |
저장한 경우에만 종료 |
🧭 명령 모드에서의 커서 이동
키 |
설명 |
h |
왼쪽으로 한 글자 이동 |
l |
오른쪽으로 한 글자 이동 |
j |
아래로 한 줄 이동 |
k |
위로 한 줄 이동 |
w |
다음 단어의 처음으로 이동 |
b |
이전 단어의 처음으로 이동 |
0 |
현재 줄의 맨 앞으로 이동 |
^ |
현재 줄의 첫 글자로 이동 |
$ |
현재 줄의 맨 끝으로 이동 |
G |
문서의 마지막 줄로 이동 |
gg |
문서의 첫 줄로 이동 |
숫자G |
지정한 줄 번호로 이동 |
✂️ 텍스트 삭제 및 복사
명령어 |
설명 |
x |
현재 커서 위치의 한 글자 삭제 |
dd |
현재 줄 삭제 |
d$ |
현재 줄에서 커서 위치부터 끝까지 삭제 |
dw |
한 단어 삭제 |
yy |
현재 줄 복사 |
p |
복사한 내용을 커서 다음 줄에 붙여넣기 |
u |
마지막 명령 실행 취소 |
Ctrl + r |
실행 취소한 명령 다시 실행 |
🔍 검색 및 치환
명령어 |
설명 |
/검색어 |
앞으로 검색 |
?검색어 |
뒤로 검색 |
n |
같은 방향으로 다음 검색 결과 이동 |
N |
반대 방향으로 다음 검색 결과 이동 |
:s/old/new |
현재 줄에서 첫 번째 old를 new로 치환 |
:s/old/new/g |
현재 줄에서 모든 old를 new로 치환 |
:%s/old/new/g |
전체 문서에서 모든 old를 new로 치환 |
:%s/old/new/gc |
치환 여부를 하나씩 확인하면서 진행 |
💡 자주 사용하는 입력 모드 명령어
명령어 |
설명 |
i |
현재 커서 앞에 입력 |
I |
현재 줄의 맨 앞에서 입력 |
a |
현재 커서 뒤에 입력 |
A |
현재 줄의 끝에서 입력 |
o |
현재 줄 아래에 새로운 줄을 추가하고 입력 시작 |
O |
현재 줄 위에 새로운 줄을 추가하고 입력 시작 |
📄 유용한 설정 (명령행 모드)
명령어 |
설명 |
:set number |
줄 번호 표시 |
:set nonumber |
줄 번호 숨김 |
:set paste |
붙여넣기 모드 활성화 (들여쓰기 방지용) |
:syntax on |
문법 강조 활성화 |
:set tabstop=4 |
탭 간격을 4로 설정 |
💡 리눅스 기본 명령어 정리
리눅스는 명령어 기반의 운영체제이므로, 아래 명령어들은 자주 사용되며 반드시 숙지할 필요가 있다.
📂 파일 및 디렉토리 관련
명령어 |
설명 |
ls |
현재 디렉토리의 파일 목록 출력 |
ls -l |
상세 정보 포함 목록 출력 |
ls -a |
숨김 파일 포함 목록 출력 |
cd 디렉토리명 |
해당 디렉토리로 이동 |
pwd |
현재 작업 중인 디렉토리 경로 출력 |
mkdir 디렉토리명 |
새로운 디렉토리 생성 |
rm 파일명 |
파일 삭제 |
rm -r 디렉토리명 |
디렉토리 및 내부 파일 삭제 |
cp 원본 대상 |
파일 복사 |
mv 원본 대상 |
파일 이동 또는 이름 변경 |
🗂️ 파일 내용 확인
명령어 |
설명 |
cat 파일명 |
전체 파일 내용 출력 |
more 파일명 |
페이지 단위로 출력 (위아래 이동 가능) |
less 파일명 |
더 유연한 탐색 가능 (검색 등) |
head 파일명 |
파일의 앞부분 10줄 출력 |
tail 파일명 |
파일의 뒷부분 10줄 출력 |
tail -f 파일명 |
실시간 로그 확인 시 유용 |
🛠️ 시스템 관련
명령어 |
설명 |
clear |
터미널 화면 초기화 |
whoami |
현재 로그인한 사용자 확인 |
hostname |
시스템 호스트 이름 확인 |
df -h |
디스크 사용량 확인 (사람이 읽기 쉬운 형식) |
top 또는 htop |
실시간 프로세스 및 리소스 사용량 확인 |
ps -ef |
현재 실행 중인 프로세스 목록 출력 |
kill PID |
특정 프로세스 종료 (PID는 프로세스 ID) |
🔐 권한 및 사용자
명령어 |
설명 |
chmod |
파일 권한 변경 |
chown |
소유자 변경 |
sudo 명령어 |
관리자 권한으로 명령어 실행 |
passwd |
비밀번호 변경 |
sudo su 또는 su |
root 사용자로 전환 |
🔄 패키지 관리 (Debian/Ubuntu/Kali 계열)
명령어 |
설명 |
apt update |
저장소 정보 갱신 |
apt upgrade |
설치된 패키지 전체 업데이트 |
apt install 패키지명 |
패키지 설치 |
apt remove 패키지명 |
패키지 제거 |
apt search 키워드 |
패키지 검색 |
apt show 패키지명 |
패키지 상세 정보 확인 |
✅ 마무리
리눅스는 초반에 다소 낯설 수 있지만, 자주 사용되는 명령어와 도구들부터 차근차근 익혀가면 금세 익숙해진다.
특히 vi 에디터와 ls, cd, cp, rm, sudo 등은 리눅스의 기본기를 다지는 데 필수적이다.
리눅스 명령어
리눅스 명령어 2