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

+ Recent posts