본문 바로가기

개발

리눅스 기초 명령어 정리 (초보자용)

반응형

리눅스 운영체제는 텍스트 기반의 명령줄 인터페이스(CLI)를 중심으로 작동합니다. 기본적인 명령어를 익히는 것은 리눅스 환경을 효율적으로 다루기 위한 필수적인 첫걸음입니다. 다음은 리눅스 초보자가 반드시 알아야 할 핵심 명령어들을 기능별로 정리한 것입니다.

1. 파일 및 디렉터리 관리

파일과 디렉터리를 생성, 복사, 이동, 삭제하는 가장 기본적인 명령어들입니다.

명령어 설명 예시
ls 현재 디렉터리의 파일과 디렉터리 목록을 보여줍니다. <br/> - -l: 상세 정보(권한, 소유자, 크기 등) 표시 <br/> - -a: 숨김 파일(.으로 시작하는 파일) 포함 표시 ls -la
pwd 현재 작업 중인 디렉터리의 전체 경로를 출력합니다. pwd
cd 작업 디렉터리를 변경합니다. <br/> - ..: 상위 디렉터리로 이동 <br/> - ~: 홈 디렉터리로 이동 cd Documents <br/> cd .. <br/> cd ~
mkdir 새로운 디렉터리를 생성합니다. mkdir new_folder
rmdir 비어 있는 디렉터리를 삭제합니다. <br/> (비어 있지 않은 디렉터리 삭제 시 rm -r 사용) rmdir empty_folder
cp 파일 또는 디렉터리를 복사합니다. <br/> - -r: 디렉터리 복사 시 사용 cp file1.txt file2.txt <br/> cp -r folder1 folder2
mv 파일 또는 디렉터리를 이동하거나 이름을 변경합니다. mv old_name.txt new_name.txt <br/> mv file.txt ~/Documents/
rm 파일이나 디렉터리를 삭제합니다. <br/> - -r: 디렉터리 삭제 시 사용 <br/> - -f: 강제 삭제 (경고 메시지 없이) rm file.txt <br/> rm -rf folder/
touch 빈 파일을 생성하거나, 기존 파일의 최근 접근/수정 시간을 업데이트합니다. touch new_file.txt
 

2. 파일 내용 확인 및 편집

파일의 내용을 보거나 간단하게 편집할 때 사용하는 명령어들입니다.

명령어 설명 예시
cat 파일의 전체 내용을 터미널에 출력합니다. <br/> 여러 파일을 연결하여 출력할 수도 있습니다. cat my_log.txt <br/> cat file1.txt file2.txt
head 파일의 맨 앞 10줄을 출력합니다. <br/> -n [줄수]: 원하는 줄 수만큼 출력 head my_log.txt <br/> head -n 5 my_log.txt
tail 파일의 맨 뒤 10줄을 출력합니다. <br/> -f: 파일 내용이 추가될 때 실시간으로 보여줍니다. tail my_log.txt <br/> tail -f my_log.txt
less, more 파일 내용을 한 화면씩 끊어서 보여줍니다. <br/> q를 누르면 종료됩니다. <br/> less는 more보다 기능이 많습니다. less large_file.txt
nano, vi 텍스트 편집기 명령어입니다. <br/> nano는 사용이 쉽고, vi는 기능이 많지만 사용법이 복잡합니다. nano file.txt <br/> vi file.txt
 

3. 권한 및 소유권

파일과 디렉터리에 대한 접근 권한을 관리하는 명령어입니다.

명령어 설명 예시
chmod 파일이나 디렉터리의 권한을 변경합니다. <br/> (e.g., r=4, w=2, x=1) <br/> u(User), g(Group), o(Others), a(All) chmod u+x script.sh <br/> chmod 755 my_folder
chown 파일이나 디렉터리의 소유자 및 그룹을 변경합니다. chown user:group file.txt
sudo 슈퍼유저(root) 권한으로 명령어를 실행합니다. <br/> (관리자 권한이 필요한 경우) sudo apt-get update
 

4. 시스템 정보 및 프로세스 관리

시스템 상태를 확인하고 실행 중인 프로세스를 관리하는 명령어입니다.

명령어 설명 예시
date 현재 날짜와 시간을 출력합니다. date
uptime 시스템이 부팅된 이후로 얼마나 오래 실행되었는지 보여줍니다. uptime
df 디스크의 사용 가능한 공간을 보여줍니다. <br/> -h: 사람이 읽기 쉬운 단위(GB, MB 등)로 표시 df -h
du 파일이나 디렉터리의 용량을 보여줍니다. <br/> -h: 사람이 읽기 쉬운 단위로 표시 <br/> -s: 총합만 보여줌 du -sh my_folder
ps 현재 실행 중인 프로세스 목록을 보여줍니다. ps -ef
top 실행 중인 프로세스들의 CPU, 메모리 사용량 등을 실시간으로 보여줍니다. top
kill 특정 프로세스를 종료합니다. <br/> kill [PID] kill 12345
whoami 현재 로그인된 사용자 이름을 출력합니다. whoami
history 이전에 입력했던 명령어 목록을 보여줍니다. history
 

5. 검색 및 필터링

특정 파일이나 패턴을 찾고 필터링하는 데 유용한 명령어입니다.

명령어 설명 예시
grep 파일 내용에서 특정 문자열을 검색합니다. <br/> -i: 대소문자를 구분하지 않음 <br/> -r: 하위 디렉터리까지 검색 grep 'error' log.txt <br/> grep -ri 'keyword' .
find 파일 시스템에서 파일을 검색합니다. <br/> -name: 파일 이름으로 검색 <br/> -type: 파일 유형으로 검색 (f: 파일, d: 디렉터리) find . -name "*.log" <br/> find /home -type d
 

6. 압축 및 아카이빙

파일을 압축하고 압축을 해제할 때 사용하는 명령어입니다.

명령어 설명 예시
tar 여러 파일을 하나로 묶거나(아카이빙), 묶은 파일을 해제합니다. <br/> -c: 묶기(create) <br/> -x: 해제(extract) <br/> -v: 과정 표시 <br/> -f: 파일명 지정 <br/> -z: gzip으로 압축/해제 tar -cvf archive.tar folder <br/> tar -xvf archive.tar <br/> tar -zcvf archive.tar.gz folder
gzip, gunzip 파일을 gzip 형식으로 압축하거나 해제합니다. gzip file.txt <br/> gunzip file.txt.gz
zip, unzip 파일을 zip 형식으로 압축하거나 해제합니다. zip archive.zip folder/ <br/> unzip archive.zip

이 외에도 수많은 리눅스 명령어가 있지만, 위 목록에 있는 명령어들만 잘 익혀도 리눅스 환경에서 기본적인 작업은 충분히 수행할 수 있습니다. 각 명령어의 자세한 사용법은 man [명령어] 명령어를 통해 확인할 수 있습니다.

반응형