반응형
개요
주기적으로 압축해야 하는 폴더를 지정해서, 스케쥴에 등록해놓으시면 편합니다.
예전에 만든 batch 스크립트가 잘 동작이 안 되어서 (예전 환경이라면 잘 될 것으로 보입니다. 7z 을 이용하므로, 7z 설치가 필요합니다)
PowerShell 스크립트를 방금 만들어보았습니다.
내부에서 파일 경로 들을 설정하셔서 이용하시면 됩니다.
윈도우 배치 파일 (PowerShell 이용)
설정할 값들
$fmileName_prefix : 파일의 이름 앞부분에 올 명칭
$dirPath : 압축할 경로
$destinationPath : 압축한 파일이 저장될 경로
# =================
# 폴더 압축 백업 PowerShell Script
# Author : E2xist (e2xist.tistory.com)
# =================
# ### 설정 부분 ###
# 압축할 파일의 앞자리 명칭
$fileName_prefix= 'test'
# 압축할 폴더 경로
$dirPath = 'D:\Dev\prismjs'
# 압축한 파일이 저장될 경로
$destinationPath = 'D:\Backups\'
# =================================
# ### 구현 부분 ###
$dt = Get-Date -format "yyyyMMdd_HHmmssffff"
Compress-Archive -Path $dirPath -DestinationPath ($destinationPath + $fileName_prefix + "." + $dt + ".zip")
윈도우 배치 파일 (예전 방식)
특정 폴더를 압축하기 위해 사용하는 배치파일 입니다.
메모장으로 복사 한 후에 xxx.bat 식으로 bat 확장자로 저장하고, 클릭으로 동작하시면 됩니다.
변경하실 부분은 세가지 입니다.
1) _MY_FOLDER 값은 압축할 폴더 경로 이고,
2) _TO_FOLDER 값은 압축후에 옮겨질 폴더 경로 입니다.
3) FNAME 값은 압축파일 명입니다.
이 배치파일은 7z 을 기준으로 동작하기 때문에, 반디집이나 7z 등이 설치가 되어있어서, 7z 명령어를 호출할 수 있는 환경이어야 작동이 됩니다.
소스 코드
메모장으로 복사후 [파일명.bat] 으로 저장할 것.
@ECHO OFF
MODE CON COLS=60 LINES=11
COLOR 3F
REM 7z 을 필요로 합니다.
ECHO ======================================
ECHO 폴더 압축 백업 배치 파일
ECHO Author : e2xist (e2xist.tistory.com)
ECHO ======================================
REM From folder path
SET _MY_FOLDER=d:\test\abcd
REM to folder path
SET _TO_FOLDER=d:\test
REM compress file name
SET FNAME=filename123
REM get _MY_DATETIME
CALL :SETDATETIME
SET FNAME="%FNAME%.%_MY_DATETIME%.zip"
REM 7z compress
7z a %_TO_FOLDER%\%FNAME% %_MY_FOLDER%
ECHO The proccess has been completed.
TIMEOUT /t 10
REM close
GOTO :EOF
REM =============================
REM functional
:SETDATETIME
SET _MY_DATE=%DATE%
REM result ->2015-03-12
SET _MY_DATE=%_MY_DATE:-=%
REM result ->20150312
SET _MY_TIME=%TIME%
REM result -> 1:40:03.01
SET _MY_TIME=%_MY_TIME: =0%
REM result -> 01:40:03.01
SET _MY_TIME=%_MY_TIME:~0,-3%
REM result -> 01:40:03
SET _MY_TIME=%_MY_TIME::=%
REM result -> 014003
SET _MY_DATETIME=%_MY_DATE%_%_MY_TIME%
git 에도 올려두었습니다.
https://github.com/exizt/compressFolderTo7z.bat
반응형
'내가 만든 것 > 스크립트 Scripts' 카테고리의 다른 글
[윈도우 Batch-Script] hosts 에 도메인 지정하기. (개발자용)(업데이트 2019-03-05) (0) | 2015.12.29 |
---|---|
[윈도우 Batch-Script] 토렌트파일 삭제 배치파일 (0) | 2015.09.28 |
[윈도우 Batch-Script, 아파치 Apache] 윈도우 아파치 배치 파일 (업데이트 2019-03-05) (0) | 2015.07.07 |
[울트라에디트 UltraEdit 매크로] 줄앞뒤로 쌍따옴표 매크로 (0) | 2012.10.25 |
[마이크로소프트 워드 매크로] 표에서 오른쪽 라인 추가 (0) | 2010.05.25 |
[마이크로소프트 워드 매크로] 라인 삭제 매크로 (0) | 2010.05.25 |
[파워포인트 매크로] 이미지 크기 조절 매크로 (3) | 2010.05.25 |