1. 디렉토리 탐색 및 파일 관리
| 명령어 | 설명 | 예시 |
| pwd | 현재 위치 출력 | pwd > /home/user |
| ls | 파일 목록 보기 | ls -l, ls -a |
| cd | 디렉토리 이동 | cd /var/log, cd ~ |
| mkdir | 새 폴더 생성 | mkdir project |
| touch | 새 파일 생성 | touch index.html |
| cp | 파일/폴더 복사 | cp file1.txt file2.txt |
| mv | 이동/이름 변경 | mv old.txt new.txt |
| rm | 파일 삭제 | rm file.txt, rm -r folder |
| tree | 디렉터리 구조 보기 | tree . (설치 필요 : sudo apt install tree) |
ls(List)
$ ls
file.txt
$ ls -a # 숨긴 파일 포함 (all)
. .. .bashrc .profile file.txt
$ ls -l # 상세 정보 보기
-rw-r--r-- 1 user user 4096 May 7 11:30 file.txt
의미:
-rw-r--r-- : 파일 권한
1 : 하드 링크 수
user : 소유자
user : 그룹
4096 : 파일 크기 (바이트)
May 7 11:30 : 마지막 수정 시각
file.txt : 파일 이름
rm (Remove)
$ rm file.txt # 일반 파일 삭제
$ rm file1.txt file2.txt # 여러 파일 삭제 디렉토리는 삭제하지 못함 (오류 발생)
$ rm -r folder/ # 디렉토리와 그 안의 모든 파일/하위 디렉토리까지 재귀적으로 삭제 -r = recursive(재귀적)
$ rm -rf folder/ # (Recursive + Force) , 경고 없이 모든 내용을 삭제하므로 가장 위험한 조합
$ rm -rf /
2. 사용자 & 권한
| 명령어 | 설명 | 예시 |
| whoami | 현재 사용자 | whoami > ubuntu |
| id | 사용자 UID, 그룹 확인 | id |
| adduser | 사용자 추가 | sudo adduser devops |
| passwd | 비밀번호 설정 | passwd user1 |
| chown | 소유권 변경 | chown user:group file |
| chmod | 권한 변경 | chmod 755 script.sh |
chown (파일/디렉토리의 소유자(owner)와 그룹(group) 변경
# 문법
chown [옵션] [소유자][:그룹] 파일명
# 예시
# 파일의 소유자를 ubuntu로 변경
chown ubuntu file.txt
# 파일의 소유자와 그룹을 ubuntu로 변경
chown ubuntu:ubuntu file.txt
# 그룹만 변경
chown :developers file.txt
# 디렉토리 및 내부 파일까지 소유자 변경
chown -R ubuntu:ubuntu /home/ubuntu/myfolder
chmod (파일/디렉토리의 권한(permission) 변경
chmod [옵션] [권한] 파일명
- 권한은 숫자 또는 기호로 지정
- 일반적으로 숫자 방식(755, 644 등)을 많이 사용
숫자 방식 권한 설명
| 권한 | 의미 | 숫자 |
| r | 읽기(Read) | 4 |
| w | 쓰기(Write) | 2 |
| x | 실행(Execute) | 1 |
# 예시
# 소유자: rwx(7), 그룹: rx(5), 기타: rx(5)
chmod 755 script.sh
# 소유자: rw-(6), 그룹: r--(4), 기타: r--(4)
chmod 644 file.txt
# 모든 사용자에게 실행 권한 추가
chmod +x run.sh
# 그룹과 기타 사용자에게 쓰기 권한 제거
chmod go-w file.txt
3. 파일 내용 보기
| 명령어 | 설명 | 예시 |
| cat | 파일 전체 출력 | cat readme.txt |
| more, less | 페이지 단위 보기 | less log.txt |
| head, tail | 앞/뒤 일부 출력 | tail -n 100 /var/log/syslog |
| grep | 문자열 검색 | grep "error" log.txt |
| wc | 줄/단어/문자 수 | wc -l file txt |
head (파일의 "처음" N줄 보기)
# 기본 문법
head [옵션] 파일명
# 예시
head file.txt # 앞 10줄 출력
head -n 5 file.txt # 앞 5줄 출력
head -n 20 /var/log/syslog # 시스템 로그의 앞 20줄 출력
tail (파일의 :마지막" N줄 보기)
# 기본 문법
tail [옵션] 파일명
# 예시
tail file.txt # 뒤 10줄 출력
tail -n 15 file.txt # 뒤 15줄 출력
tail -f /var/log/syslog # 실시간 로그 감시
-n [줄 수] : 마지막에서부터 몇 줄 출려할지 지정 (기본값 : 10줄)
-f : 실시간으로 파일 변경을 계속 출력 > 고르 모니터링에 매우 유용
'linux' 카테고리의 다른 글
| systemd와 systemctl을 활용한 서비스 관리 (0) | 2025.05.14 |
|---|---|
| 리눅스에서 자주 사용하는 명령어 & 문법 정리 -2 (2) | 2025.05.08 |
| 리눅스 쉘이란? (0) | 2025.05.07 |
| 리눅스 커널이란? (0) | 2025.04.30 |
| Linux란 무엇인가.? (0) | 2025.04.29 |