PowerShell을 활용한 자동화 스크립트 작성법
- 목차
반응형
💡 PowerShell로 업무 자동화하기
✅ PowerShell 기본 개념
PowerShell은 객체 지향 기반의 스크립트 언어로, 기존 CMD보다 강력한 기능을 제공합니다.
1️⃣ PowerShell 실행 방법
- Win + X → Windows PowerShell(관리자 권한으로 실행)
- Win + R → powershell 입력 후 실행
- CMD에서 powershell 입력 후 실행
2️⃣ PowerShell 실행 정책 변경 (스크립트 실행 허용)
기본적으로 PowerShell은 스크립트 실행이 제한되어 있습니다. 이를 해제하려면 다음 명령어를 실행합니다.
Set-ExecutionPolicy RemoteSigned
✅ RemoteSigned → 로컬 스크립트 실행 허용, 인터넷 다운로드 스크립트는 서명 필요
✅ PowerShell 기본 문법
1️⃣ 변수 사용
$이름 = "홍길동"
echo "안녕하세요, $이름 님!"
✅ $변수명 형식으로 변수 선언
2️⃣ 조건문
$파일경로 = "C:\test.txt"
if (Test-Path $파일경로) {
echo "파일이 존재합니다."
} else {
echo "파일이 없습니다."
}
✅ Test-Path → 파일 또는 폴더 존재 여부 확인
3️⃣ 반복문
for ($i=1; $i -le 5; $i++) {
echo "현재 숫자: $i"
}
✅ for문을 활용한 반복 실행
✅ 실무에서 활용할 수 있는 자동화 스크립트
1️⃣ 자동 백업 스크립트
$source = "C:\중요파일"
$destination = "D:\백업"
Copy-Item -Path $source -Destination $destination -Recurse -Force
Get-Date | Out-File -Append "D:\backup_log.txt"
echo "백업이 완료되었습니다."
✅ Copy-Item → 폴더 및 파일 복사
✅ Get-Date | Out-File → 현재 날짜 기록하여 로그 생성
2️⃣ 네트워크 설정 자동화
Write-Host "네트워크 설정 초기화 중..."
ipconfig /release
ipconfig /renew
ipconfig /flushdns
Write-Host "네트워크 초기화 완료"
✅ 네트워크 문제 발생 시 자동 실행 가능
✅ 작업 스케줄러에서 특정 시간마다 실행하도록 설정 가능
3️⃣ 로그 파일 자동 정리 (30일 이상 된 로그 삭제)
$logPath = "C:\Logs"
$limit = (Get-Date).AddDays(-30)
Get-ChildItem -Path $logPath -Filter "*.log" | Where-Object {$_.LastWriteTime -lt $limit} | Remove-Item -Force
Write-Host "오래된 로그 파일 삭제 완료"
✅ 30일 이상 된 로그 파일 자동 삭제
✅ 서버 유지보수 시 유용한 자동화 작업
🚀 PowerShell을 활용한 자동화 마무리
PowerShell을 활용하면 백업, 네트워크 설정, 로그 정리 등 다양한 작업을 자동화할 수 있습니다.
✅ 반복적인 작업 자동 실행 (백업, 네트워크 설정 등)
✅ 스크립트 실행 정책 변경 후 활용 가능
✅ 작업 스케줄러와 연동하여 자동 실행 가능
반응형
'IT' 카테고리의 다른 글
2025 최신 윈도우 꿀팁 10가지 – 실생활에서 유용한 기능 총정리 (0) | 2025.02.03 |
---|---|
윈도우 예약 종료 설정 방법 – 가장 쉬운 방법 총정리 (0) | 2025.02.03 |
윈도우 배치파일(.bat)자동 실행 작업 스케줄러(Task Scheduler) 가이드 (0) | 2025.02.03 |
윈도우 배치파일(.bat) 자동 실행 스크립트 활용법 (0) | 2025.02.03 |
윈도우에서 파일 압축, 해제 및 심볼릭 링크 활용하기 (0) | 2025.02.03 |