본문 바로가기
개발/Linux

Linux 파일 조작 명령어: touch, ln, rm -r

by 낭만기사 2025. 4. 17.
Linux 파일 조작 명령어: touch, ln, rm -r

Linux 파일 조작 명령어

touch, ln, rm -r 명령어를 활용한 효율적인 파일 관리 방법

1. touch - 빈 파일 생성 또는 파일 시간 업데이트

명령어 정의

touch 명령어는 빈 파일을 생성하거나 기존 파일의 접근 및 수정 시간을 현재 시간으로 업데이트하는 데 사용됩니다.

기본 사용법

$ touch [옵션] 파일명

주요 옵션

옵션 설명
-a 접근 시간(access time)만 변경
-m 수정 시간(modification time)만 변경
-c 파일이 존재하지 않으면 생성하지 않음
-t 지정한 시간으로 변경 (형식: [[CC]YY]MMDDhhmm[.ss])

사용 예제

$ touch newfile.txt # 빈 파일 생성
$ touch -t 202301011200 oldfile.txt # 지정 시간으로 변경
$ touch -a file.txt # 접근 시간만 업데이트
팁: touch 명령어는 스크립트에서 빈 로그 파일을 생성하거나, 빌드 시스템에서 파일 타임스탬프를 업데이트할 때 유용합니다.

2. ln - 링크 생성

명령어 정의

ln 명령어는 파일이나 디렉토리에 대한 링크(하드 링크 또는 심볼릭 링크)를 생성합니다.

기본 사용법

$ ln [옵션] 원본파일 링크파일

주요 옵션

옵션 설명
-s 심볼릭 링크 생성 (기본은 하드 링크)
-f 기존 링크 파일이 있으면 강제로 덮어씀
-i 기존 링크 파일이 있으면 덮어쓸지 확인
-v 자세한 정보 출력

하드 링크 vs 심볼릭 링크

특징 하드 링크 심볼릭 링크
저장 방식 동일한 inode 참조 원본 파일 경로 저장
원본 삭제 시 영향 없음 링크 깨짐
파일 시스템 동일 파일 시스템 내에서만 가능 다른 파일 시스템에도 가능
디렉토리 링크 불가능 가능

사용 예제

$ ln -s /path/to/original link_name # 심볼릭 링크 생성
$ ln original.txt hardlink.txt # 하드 링크 생성
$ ln -sf new_target existing_link # 기존 링크를 새로운 대상으로 변경
주의: 심볼릭 링크는 상대 경로로 생성될 수 있으므로, 시스템을 이동할 때 문제가 발생할 수 있습니다. 가능하면 절대 경로를 사용하세요.

3. rm -r - 디렉토리와 내용 재귀적으로 삭제

명령어 정의

rm 명령어에 -r 옵션을 사용하면 디렉토리와 그 하위 내용을 모두 재귀적으로 삭제할 수 있습니다.

기본 사용법

$ rm -r [옵션] 디렉토리명

주요 옵션

옵션 설명
-r, -R, --recursive 디렉토리와 그 내용을 재귀적으로 삭제
-f, --force 확인 없이 강제 삭제
-i 삭제 전 각 파일마다 확인
-v, --verbose 삭제 과정을 자세히 출력
-d, --dir 빈 디렉토리 삭제

사용 예제

$ rm -r my_directory # 디렉토리와 내용 삭제
$ rm -rf old_project # 확인 없이 강제 삭제
$ rm -ri temp_files # 각 파일마다 삭제 확인
중요 경고: rm -rf 명령어는 시스템을 파괴할 수 있는 강력한 명령어입니다. 특히 루트 디렉토리(/)에서 실행하면 시스템 전체가 삭제될 수 있습니다. 항상 삭제 대상 경로를 두 번 확인하세요.
안전한 삭제 방법: 먼저 ls -R 디렉토리명으로 삭제할 내용을 확인한 후 rm 명령을 실행하거나, rm -ri 옵션을 사용하여 각 항목을 확인하면서 삭제하세요.

명령어 조합 활용 예시

임시 파일 정리 스크립트

# 30일 이상된 로그 파일 삭제
$ find /var/log -name "*.log" -mtime +30 -exec rm -v {} \;

백업 시스템 구성

# 중요 파일에 대한 심볼릭 링크 생성
$ ln -s /mnt/backup/important_data.txt ~/data_link
# 링크 확인
$ ls -l ~/data_link

빈 디렉토리 정리

# 모든 빈 디렉토리 찾아 삭제
$ find . -type d -empty -delete

© 2023 Linux 명령어 가이드. 모든 권리 보유.

더 많은 Linux 명령어를 배우려면 공식 문서를 참조하세요.

반응형