반응형
리눅스 운영체제는 텍스트 기반의 명령줄 인터페이스(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 [명령어] 명령어를 통해 확인할 수 있습니다.
반응형
'개발' 카테고리의 다른 글
리눅스 명령어,, 병렬 수행이 가능하다!?! (0) | 2025.07.31 |
---|---|
YAML 문법 기초: YAML 파일 작성 가이드 (1) | 2025.07.31 |
전통 RDB → 레이크하우스(Lakehouse)로의 전환 시 고려할 점 (1) | 2025.07.30 |
DB Connection Pool Exhaustion 디버깅 방법: 데이터베이스 연결 고갈 현상 해결 가이드 (1) | 2025.07.30 |
DuckDB vs SQLite: 인메모리 분석 DB의 미래를 선도할 승자는? (2) | 2025.07.30 |