
PowerShell로 파일 복사 및 덮어쓰기 방법 | 간단한 명령어 정리
PowerShell을 사용하면 특정 파일을 특정 경로로 쉽게 복사(Copy)하거나 덮어쓰기(Overwrite) 할 수 있습니다. Windows 환경에서 파일을 자동으로 백업하거나 특정 폴더로 이동할 때 유용하게 활용할 수 있습니다. 이번 가이드에서는 PowerShell 파일 복사 및 덮어쓰기 방법을 예제 코드와 함께 자세히 설명합니다.
🔹 PowerShell에서 파일 복사하는 기본 방법
PowerShell에서 Copy-Item 명령어를 사용하면 특정 파일을 원하는 위치로 복사할 수 있습니다.
📌 파일을 특정 폴더로 복사하기
Copy-Item "C:\Source\file.txt" -Destination "D:\Target\" -Force
✅ C:\Source\file.txt → D:\Target\ 폴더로 파일을 복사
✅ 같은 파일명이 있으면 기본적으로 덮어쓰기 없이 복사 실패
🔹 PowerShell에서 파일 덮어쓰기(Overwrite)
기본적으로 Copy-Item은 같은 파일이 있을 경우 자동으로 덮어쓰지 않습니다.
이때 -Force 옵션을 추가하면 강제 덮어쓰기가 가능합니다.
📌 기존 파일을 강제로 덮어쓰기
Copy-Item "C:\Source\file.txt" -Destination "D:\Target\" -Force
✅ -Force 옵션을 사용하면 같은 이름의 파일이 있어도 강제로 덮어쓰기 가능
📌 복사하면서 파일 이름 변경하기
Copy-Item "C:\Source\file.txt" -Destination "D:\Target\newfile.txt" -Force
✅ file.txt → newfile.txt로 이름 변경 후 저장
🔹 PowerShell에서 폴더 전체 복사하기
폴더 전체를 복사할 때는 -Recurse 옵션을 사용합니다.
📌 하위 폴더 포함하여 폴더 전체 복사
Copy-Item "C:\SourceFolder\" -Destination "D:\TargetFolder\" -Recurse -Force
✅ -Recurse 옵션으로 하위 폴더 및 파일까지 모두 복사
✅ -Force 옵션으로 기존 파일이 있을 경우 덮어쓰기
🔹 파일이 존재하면 삭제 후 복사
PowerShell에서 기존 파일을 덮어쓰기 전에 삭제하려면 Remove-Item을 사용할 수 있습니다.
$source = "C:\Source\file.txt"
$destination = "D:\Target\file.txt"
# 기존 파일 삭제 후 복사
if (Test-Path $destination)
{
Remove-Item $destination -Force
}
Copy-Item $source -Destination $destination
✅ Test-Path로 파일 존재 여부 확인
✅ Remove-Item -Force로 기존 파일 삭제 후 복사
🔹 사용자 입력을 받아 파일 덮어쓰기 여부 결정
사용자에게 덮어쓰기 여부를 물어보고 결정할 수도 있습니다.
$source = "C:\Source\file.txt"
$destination = "D:\Target\file.txt"
if (Test-Path $destination) {
Write-Host "파일이 이미 존재합니다. 덮어쓰시겠습니까? (Y/N)"
$input = Read-Host
if ($input -eq "Y") {
Copy-Item $source -Destination $destination -Force
Write-Host "파일이 덮어쓰기 되었습니다."
} else {
Write-Host "파일 복사를 취소했습니다."
}
} else {
Copy-Item $source -Destination $destination
Write-Host "파일이 복사되었습니다."
}
✅ Read-Host로 사용자 입력을 받아 덮어쓰기 여부 결정
✅ Test-Path로 기존 파일 확인 후 삭제
🔹 PowerShell 파일 복사 및 덮어쓰기 명령어 정리
작업명령어
특정 파일 복사 | Copy-Item "소스경로" -Destination "대상경로" |
파일 강제 덮어쓰기 | Copy-Item "소스경로" -Destination "대상경로" -Force |
파일명 변경 후 복사 | Copy-Item "소스파일" -Destination "대상파일명" |
폴더 전체 복사 | Copy-Item "소스폴더" -Destination "대상폴더" -Recurse |
기존 파일 삭제 후 복사 | Remove-Item "대상파일" -Force 후 Copy-Item |
사용자 입력 받아 덮어쓰기 여부 결정 | Read-Host 활용 |
🚀 결론
PowerShell을 사용하면 파일을 손쉽게 복사하거나 덮어쓸 수 있습니다. Copy-Item과 -Force, -Recurse 옵션을 조합하면 원하는 작업을 자동화할 수 있으며, Test-Path와 Remove-Item을 활용하면 보다 정교한 파일 관리가 가능합니다.
자동화 스크립트, 백업 시스템, 배포 작업 등에 활용할 수 있습니다.
'IT' 카테고리의 다른 글
포스트모템(Postmortem)이란 무엇인가? (0) | 2025.03.10 |
---|---|
SQL의 핵심 개념인 DML과 DDL의 차이점 (0) | 2025.03.05 |
Python Streamlit을 활용한 Parquet 파일 데이터 시각화와 필터링 기능 구현 (1) | 2024.12.05 |
8진수를 16진수로 변환하는 방법: 10진수 및 2진수를 거치는 방법 (0) | 2024.10.21 |
SQL Server 교착 상태(Deadlock) 발생 및 해결 방법 / 트랜잭션이 잠금 리소스에서 다른 프로세스와의 교착 상태가 발생하여 실행이 중지되었습니다. (0) | 2024.10.16 |