Linux

[Linux] 리눅스에서 자주 사용하는 파일 관련 명령어들을 기능과 사용법

라텐느 2025. 4. 20. 19:52

🧷 nano – 간단한 텍스트 편집기

  • 역할: 터미널에서 직접 텍스트 파일을 작성하거나 수정할 수 있는 편집기입니다.
  • 형식:
  • nano 파일명
  • 예시:→ intro.txt 파일을 열거나 새로 만듭니다.
    편집 후에는 Ctrl + O (저장), Enter, Ctrl + X (종료)로 마무리합니다.
  • nano intro.txt
  • 주요 단축키:
    • Ctrl + O : 저장 (Write Out)
    • Ctrl + X : 종료 (Exit)
    • Ctrl + K : 줄 삭제
    • Ctrl + Shift + 6 (또는 Ctrl + ^)
    • Ctrl + K
    • Ctrl + U : 붙여넣기
    • Ctrl + W : 검색
1.텍스트의 시작 부분으로 커서를 이동합니다.
2.Ctrl + Shift + 6 (또는 Ctrl + ^)을 눌러 선택을 시작합니다.
3.방향키(위, 아래, 왼쪽, 오른쪽)로 선택 영역을 확장합니다.
4.복사하려면 Ctrl + K (잘라내기) 또는 Ctrl + U (붙여넣기)를 사용합니다.

🖋️ vim – 고급 텍스트 편집기

  • 역할: vim은 vi의 확장 버전으로, 고급 기능을 제공하는 텍스트 편집기입니다. nano보다 더 많은 기능과 커스터마이징을 제공하며, 코드 편집에 많이 사용됩니다.
  • 형식:
  • vim 파일명
  • 예시:→ index.html 파일을 vim으로 엽니다.
  • vim index.html
  • 주요 명령어:
    • i : 입력 모드로 전환
    • Esc : 명령 모드로 전환
    • :w : 저장
    • :q : 종료
    • :wq : 저장 후 종료
    • :q! : 저장하지 않고 종료
    • yy : 한 줄 복사
    • dd : 한 줄 삭제
    • p : 붙여넣기
    • u : 마지막 수정 취소 (Undo)
    • /검색어 : 파일 내 검색

🔍 less – 파일 내용 페이지별 출력

  • 역할: 긴 파일의 내용을 한 번에 모두 출력하지 않고 페이지 단위로 출력하며, 검색이나 탐색이 가능합니다. more 명령어와 유사하지만 더 많은 기능을 제공합니다.
  • 형식:
  • less 파일명
  • 예시:→ large_file.txt 파일을 한 페이지씩 출력합니다.
  • less large_file.txt
  • 주요 단축키:
    • Space : 한 페이지씩 아래로 스크롤
    • b : 한 페이지씩 위로 스크롤
    • /검색어 : 검색
    • n : 다음 검색 결과로 이동
    • q : 종료

리눅스에서 자주 사용하는 파일 관련 명령어들을 기능과 사용법


1. ls – 파일 및 디렉터리 목록 출력

  • 기능: 현재 디렉터리 내 파일 및 디렉터리 목록을 출력합니다.
  • 주요 옵션:
    • -l : 파일의 자세한 정보(권한, 크기, 수정 날짜 등)를 출력
    • -a : 숨김 파일 포함 모든 파일 출력
    • -h : 파일 크기를 사람이 읽기 쉬운 형식으로 표시 (예: 1K, 1M)
  • 예시:
  • ls -l ls -a

2. cd – 디렉터리 변경

  • 기능: 작업 디렉터리를 변경합니다.
  • 형식:
  • cd 디렉터리명
  • 예시:cd /home/user cd ..

3. pwd – 현재 디렉터리 출력

  • 기능: 현재 작업 중인 디렉터리의 경로를 출력합니다.
  • 형식:
  • pwd
  • 예시:/home/user/documents

4. mkdir – 새 디렉터리 생성

  • 기능: 새로운 디렉터리를 생성합니다.
  • 형식:
  • mkdir 디렉터리명
  • 예시:mkdir new_folder

5. rmdir – 빈 디렉터리 삭제

  • 기능: 비어 있는 디렉터리를 삭제합니다.
  • 형식:
  • rmdir 디렉터리명
  • 예시:
  • rmdir empty_folder

6. rm – 파일 또는 디렉터리 삭제

  • 기능: 파일 또는 디렉터리를 삭제합니다.
  • 형식:
  • rm 파일명
  • 옵션:
    • -r : 디렉터리와 그 안의 모든 파일 삭제 (재귀적으로 삭제)
    • -f : 존재하지 않는 파일에 대한 오류를 무시하고 강제로 삭제
  • 예시:rm file.txt rm -rf folder_name

7. touch – 빈 파일 생성 / 수정 시간 갱신

  • 기능: 새 파일을 생성하거나 기존 파일의 수정 시간을 갱신합니다. 같은 이름의 파일이 이미 있으면 내용은 그대로 두고 최종 수정 시간만 변경됩니다.
  • 형식:
  • touch 파일명
  • 예시:touch newfile.txt

8. cp – 파일 복사

  • 기능: 파일을 복사합니다.
  • 형식:
  • cp 원본파일 대상파일
  • 옵션:
    • -r : 디렉터리를 재귀적으로 복사
    • -i : 덮어쓰기 전에 확인
  • 예시:
  • cp file1.txt file2.txt cp -r folder1 folder2

9. mv – 파일 또는 디렉터리 이동/이름 변경

  • 기능: 파일이나 디렉터리를 이동하거나 이름을 변경합니다.
  • 형식:
  • mv 원본파일 대상파일
  • 예시:
  • mv oldname.txt newname.txt mv file.txt /path/to/destination/

10. cat – 파일 내용 출력

  • 기능: 파일의 내용을 출력합니다.
  • 형식:
  • cat 파일명
  • 예시:
  • cat file.txt

11. head – 파일의 처음 몇 줄 출력

  • 기능: 파일의 처음 몇 줄을 출력합니다.
  • 형식:
  • head 파일명
  • 예시:
  • head file.txt head -n 20 file.txt # 첫 20줄 출력

12. tail – 파일의 마지막 몇 줄 출력

  • 기능: 파일의 마지막 몇 줄을 출력합니다.
  • 형식:
  • tail 파일명
  • 예시:
  • tail file.txt tail -n 20 file.txt # 마지막 20줄 출력

13. find – 파일 검색

  • 기능: 지정된 경로에서 조건에 맞는 파일을 찾습니다.
  • 형식:
  • find 경로 -조건
  • 예시:
  • find /home/user -name "*.txt" find /var/log -type f -name "*.log"

14. chmod – 파일 권한 변경

  • 기능: 파일이나 디렉터리의 권한을 변경합니다.
  • 형식:
  • chmod 권한 파일명
  • 예시:
  • chmod 755 file.txt chmod -R 777 folder_name # 디렉터리와 내부 파일 모두 권한 변경

15. chown – 파일 소유자 및 그룹 변경

  • 기능: 파일의 소유자 및 그룹을 변경합니다.
  • 형식:
  • chown 소유자:그룹 파일명
  • 예시:
  • chown user:group file.txt chown -R user:group folder_name

16. rm – 파일 또는 디렉터리 삭제

  • 기능: 파일이나 디렉터리를 삭제합니다.
  • 형식:
  • rm 파일명
  • 주요 옵션:
    • -r : 디렉터리와 그 안의 모든 파일을 재귀적으로 삭제 (디렉터리 삭제 시 필수)
    • -f : 존재하지 않는 파일에 대한 오류를 무시하고 강제로 삭제
    • -i : 삭제 전에 확인 메시지 출력 (안전하게 삭제)
  • 예시:
    • 파일 삭제:
    • rm file.txt
    • 디렉터리 삭제 (재귀적으로):
    • rm -r folder_name
    • 강제로 삭제 (확인 없이 삭제):
    • rm -f file.txt

17. rm -rf – 강제로 디렉터리 삭제

  • 기능: rm 명령어에 -r (재귀적 삭제)와 -f (강제 삭제)를 함께 사용하여 디렉터리 및 그 안의 파일들을 강제로 삭제합니다. 사용 시 주의가 필요합니다.
  • 형식:
  • rm -rf 디렉터리명
  • 예시:
  • rm -rf /path/to/directory

18. unlink – 파일 삭제

  • 기능: unlink는 단일 파일을 삭제하는 명령어로, rm보다 좀 더 단순한 파일 삭제 방법입니다.
  • 형식:
  • unlink 파일명
  • 예시:
  • unlink file.txt
삭제된 파일은 리눅스 시스템에서는 휴지통으로 복구되지 않으며, 삭제 후 복구가 어려울 수 있습니다.
중요한 파일을 삭제할 때는 -i 옵션을 사용하여 안전하게 작업하는 것이 좋습니다.

✅ 요약표

명령어 설명 비고
ls 파일 및 디렉터리 목록 출력 ls -l, ls -a
cd 디렉터리 변경 cd /home/user, cd ..
pwd 현재 디렉터리 출력 pwd
mkdir 새 디렉터리 생성 mkdir new_folder
rmdir 빈 디렉터리 삭제 rmdir empty_folder
rm 파일 또는 디렉터리 삭제 rm file.txt, rm -rf folder
touch 빈 파일 생성 / 수정 시간 갱신 touch newfile.txt
cp 파일 복사 cp file1.txt file2.txt
mv 파일 또는 디렉터리 이동/이름 변경 mv file.txt newfile.txt
cat 파일 내용 출력 cat file.txt
head 파일의 처음 몇 줄 출력 head file.txt
tail 파일의 마지막 몇 줄 출력 tail file.txt
find 파일 검색 find /path -name "*.txt"
chmod 파일 권한 변경 chmod 755 file.txt
chown 파일 소유자 및 그룹 변경 chown user:group file.txt
rm 파일 또는 디렉터리 삭제 rm -r, -l, -f
rm -rf  강제로 디렉터리 삭제 rm -rf /path/to/directory
unlink 파일 삭제 unlink file.txt