Linux Enginner

리눅스의 대한 모든 지식들을 공유하고 배울 수 있는 블로그입니다.

리눅스에서 파일 복사 및 이동하는 법

리눅스에서 파일을 복사하거나 이동하는 작업은 매우 간단하고 유용한 기능입니다. cp 명령어를 사용하여 파일을 복사하고, mv 명령어를 사용하여 파일을 이동하거나 이름을 바꿀 수 있습니다. 이 글에서는 두 가지 명령어를 사용하는 방법을 자세히 설명하겠습니다.

1. 파일 복사 (cp 명령어)

파일을 복사할 때는 cp 명령어를 사용합니다. cp는 "copy"의 약자로, 원본 파일을 지정한 위치에 복사합니다.

기본 구문:

cp [옵션] 원본파일 대상파일

예시:

  1. 단순한 파일 복사:위 명령어는 example.txt 파일을 /home/user/backup/ 디렉터리로 복사합니다.
  2. cp example.txt /home/user/backup/
  3. 여러 파일을 한 번에 복사:위 명령어는 file1.txtfile2.txt 두 개의 파일을 /home/user/backup/ 디렉터리로 복사합니다.
  4. cp file1.txt file2.txt /home/user/backup/
  5. 디렉터리 전체 복사:
    디렉터리 내의 모든 파일을 복사하려면 -r (recursive) 옵션을 사용합니다.이 명령어는 /home/user/documents/ 디렉터리 내의 모든 파일과 하위 디렉터리까지 복사합니다.
  6. cp -r /home/user/documents/ /home/user/backup/
  7. 파일 복사 시 덮어쓰기 방지:
    -n 옵션을 사용하면 대상 위치에 같은 이름의 파일이 있을 경우 덮어쓰지 않도록 할 수 있습니다.
  8. cp -n example.txt /home/user/backup/
  9. 파일 복사 진행 상황 표시:
    복사하는 동안 진행 상태를 보고 싶다면 -v (verbose) 옵션을 추가합니다.
  10. cp -v example.txt /home/user/backup/

2. 파일 이동 (mv 명령어)

파일을 이동하거나 이름을 변경하려면 mv 명령어를 사용합니다. mv는 "move"의 약자로, 파일을 한 위치에서 다른 위치로 이동하거나 파일 이름을 변경하는 데 사용됩니다.

기본 구문:

mv [옵션] 원본파일 대상파일

예시:

  1. 파일 이동:위 명령어는 example.txt 파일을 /home/user/backup/ 디렉터리로 이동합니다.
  2. mv example.txt /home/user/backup/
  3. 파일 이름 변경:이 명령어는 oldname.txt 파일의 이름을 newname.txt로 변경합니다.
  4. mv oldname.txt newname.txt
  5. 여러 파일을 한 번에 이동:여러 파일을 지정한 디렉터리로 이동할 수 있습니다.
  6. mv file1.txt file2.txt /home/user/backup/
  7. 덮어쓰기 방지 (파일이 이미 존재하는 경우):
    -n 옵션을 사용하여 파일이 이미 존재하면 덮어쓰지 않도록 할 수 있습니다.
  8. mv -n example.txt /home/user/backup/
  9. 파일 이동 시 확인 메시지 표시:
    -i 옵션을 사용하면, 파일이 덮어써지기 전에 확인 메시지가 표시됩니다.
  10. mv -i example.txt /home/user/backup/

3. 파일 복사 및 이동 시 유용한 옵션

  • -f (force): 강제로 복사 또는 이동을 진행합니다. 대상 파일이 있을 경우 덮어쓰며 확인 메시지를 표시하지 않습니다.
  • cp -f example.txt /home/user/backup/
  • -u (update): 파일이 대상보다 최신일 경우에만 복사합니다.
  • cp -u example.txt /home/user/backup/

4. 파일 복사와 이동의 차이점

  • 복사 (cp)는 원본 파일을 그대로 두고 대상 위치에 동일한 파일을 생성하는 작업입니다. 즉, 원본 파일과 복사된 파일이 별개로 존재하게 됩니다.
  • 이동 (mv)은 원본 파일을 지정된 위치로 옮기기 때문에 원본 파일은 더 이상 원래 위치에 존재하지 않습니다. 이름 변경도 이 방법을 사용합니다.

결론

리눅스에서 파일을 복사하거나 이동하는 것은 cpmv 명령어로 간단히 처리할 수 있습니다. 복사할 때는 원본을 그대로 두고 복사본을 만들고, 이동할 때는 파일을 다른 위치로 이동하거나 이름을 변경하는 작업을 합니다. 필요한 옵션을 잘 활용하면 효율적으로 파일 관리 작업을 할 수 있습니다.