Exp/Linux

[Linux]명령어로 파일을 움직여 보자

kilog 2024. 4. 25. 22:31
728x90

 

안녕하세요 ki입니다.

이번 Exp는 리눅스 파일 이동 관련 명령어입니다.

Crontab으로 일정 시간에 백업을 하는 개발을 하면서 파일 이동과 복사를 필요했던 경험이 있습니다.

이전 글에서는 로컬에서 서버로 보내거나 서버에서 로컬로 파일을 옮기는 명령어에 대해서 공유했습니다.

2024.04.25 - [Exp/Linux] - [Linux] scp 명령어에 대해서

 

[Linux] scp 명령어에 대해서

안녕하세요 ki입니다.이번 Exp는 Scp 명령어입니다.로컬에서 서버로 파일을 옮겨야 할 때 사용한 경험이 있습니다.지금은 FIleZilla나 WinSCP를 사용해서 GUI로 편하게 파일을 전송하고 있습니다. scp란

kkkkt.tistory.com

 

기본적인 명령어로서 필수적으로 알고 있으면 리눅스 사용 시 편리한 명령어들입니다.

# 파일을 복사하는 명령어
cp

# 파일을 이동 명령어
mv

 

 

파일을 복사하는 명령어 cp

cp는 파일이나 디렉토리를 복사하는 데 사용합니다. "copy"의 약어입니다. 주로 다음과 같은 형식으로 사용됩니다

# cp [옵션] [파일명] [복사할 경로]
# ex) file.txt를 /path/directory/로 복사
cp file.txt /path/directory/


# 폴더(디렉토리를)를 복사하는 경우
# ex)path/source_directory/의 내용을 /path/destination_directory/에 복사
# 폴더를 복사할 경우 -r 옵션을 사용해야 됨
cp -r /path/source_directory/ /path/destination_directory/

 

cp명령어 옵션은?

-r 또는 --recursive: 디렉토리와 그 내용을 복사합니다.
-i 또는 --interactive: 대상 파일이 이미 존재할 경우 사용자에게 덮어쓸 것인지 확인을 요청합니다.
-u 또는 --update: 대상 파일이 이미 존재하고 원본 파일보다 날짜가 더 최신인 경우에만 복사합니다.
-v 또는 --verbose: 복사 진행 상황을 자세하게 출력합니다.
-p 또는 --preserve: 원본 파일의 속성을 유지합니다 (권한, 소유자, 그룹, 시간 등).
-f 또는 --force: 대상 파일이 이미 존재하더라도 덮어쓰기를 강제로 실행합니다.
-n 또는 --no-clobber: 대상 파일이 이미 존재할 경우 덮어쓰지 않고 건너뜁니다.
-s 또는 --symbolic-link: 대상 파일을 심볼릭 링크(바로가기)로 복사합니다.
-L 또는 --dereference: 심볼릭 링크를 따라 실제 파일을 복사합니다.
--parents: 디렉토리를 복사할 때 상위 디렉토리도 함께 생성합니다.
--no-preserve: 원본 파일의 속성을 유지하지 않습니다.

 

파일을 이동 명령어 mv

mv 는 파일 또는 디렉토리를 이동하거나 이름 변경에 사용됩니다. "move"의 약어이고 다음과 같은 형식으로 사용됩니다.

# mv [옵션] [파일명] [이동할 경로]
# ex) file.txt를 /path/directory/로 이동
mv file.txt /path/directory/


# mv [옵션] [원본 파일명] [변경 할 파일명]
# ex) fileOne.txt를 fileTwo.txt로 변경
mv fileOne.txt fileTwo.txt

 

mv명령어 옵션은?

-i 또는 --interactive: 대상 파일이 이미 존재할 경우 사용자에게 덮어쓸 것인지 확인을 요청합니다.
-f 또는 --force: 대상 파일이 이미 존재하더라도 덮어쓰기를 강제로 실행합니다.
-u 또는 --update: 파일이 이미 존재하고 원본 파일보다 날짜가 더 최신인 경우에만 이동 또는 복사합니다.
-v 또는 --verbose: 이동 또는 이름 변경 작업이 수행될 때 자세한 정보를 출력합니다.
-n 또는 --no-clobber: 대상 파일이 이미 존재할 경우 덮어쓰지 않고 건너뜁니다.
-b 또는 --backup: 대상 파일이 이미 존재할 경우 백업 파일을 만듭니다.
-S <접미사> 또는 --suffix=<접미사>: 백업 파일의 접미사를 지정합니다.
-T 또는 --target-directory=<대상 디렉토리>: 여러 파일을 한 번에 대상 디렉토리로 이동합니다.
--strip-trailing-slashes: 대상 디렉토리 경로에서 슬래시를 제거합니다.

 

 

참고