간단 한 패키지 폴 더 bat 스 크 립 트

1848 단어 Windows
최근 에 자주 해 야 할 일 은 git 에 있 는 최신 프로그램 을 로 컬 로 업데이트 한 후에 압축 해서 서버 에 올 리 고 서버 에 있 는 코드 를 업데이트 하 는 것 입 니 다. 얼마 전에 저 는 서버 에 간단 한 업데이트 셸 을 썼 습 니 다. 효과 가 틀 리 지 않 고 업데이트 효율 을 높 였 으 며 실 수 를 피 했 습 니 다. 그래서 저 는 생각 했 습 니 다.로 컬 압축 작업 과 마찬가지 로 스 크 립 트 를 처리 할 수 있 습 니 다. 복사 붙 여 넣 기 같은 작업 을 할 필요 가 없습니다. 일반적인 상황 에서 프로그램 을 포장 할 때 직접 복사 할 수 없 기 때 문 입 니 다. 예 를 들 어 로그 파일, 캐 시 파일, 프로필 등 입 니 다. 이 파일 들 은 현재 환경 에 만 적용 되 기 때문에 모든 것 을 덮어 쓸 수 없습니다.이전에 업 데 이 트 를 쓸 때 셸 에 서 는 업데이트 할 필요 가 없 는 파일 이나 폴 더 를 지우 고 덮어 쓰 는 것 이 같은 이치 라 고 판단 하여 bat 관련 문법 을 찾 아 간단 한 처리 스 크 립 트 를 썼 습 니 다.
@echo off
::  _ROOT  ,                    
::       exe  
::                  
set _ROOT=D:\xampp\htdocs\
set _FROM=%_ROOT%web
set _TO=%_ROOT%web_source
set _ZIP=E:\software\Haozip\HaoZip.exe
set _EXCFILE=%_ROOT%exclude_%date:~0,4%%date:~5,2%%date:~8,2%%time:~0,2%%time:~3,2%%time:~6,2%.txt
set _EXCFILE=%EXCFILE: =%
if not exist %_FROM% GOTO Nosource ELSE GOTO CreateExcude

::  exclude  ,                  
::      \  ,                     
:CreateExcude
if exist %_EXCFILE% ( del %_EXCFILE% )

echo %_FROM%\favicon.ico >> %_EXCFILE%
echo %_FROM%\data\cache\ >> %_EXCFILE%
echo %_FROM%\data\config\ >> %_EXCFILE%
echo %_FROM%\data\log\ >> %_EXCFILE%
echo %_FROM%\data\upload\ >> %_EXCFILE%
echo %_FROM%\wap\config_ >> %_EXCFILE%
echo %_FROM%\readme.txt >> %_EXCFILE%

GOTO Tocopy



::        
:Tocopy
if exist %_TO% ( rd %_TO% /s )
if exist %_TO%.zip ( del %_TO%.zip )
md %_TO%

xcopy %_FROM% %_TO% /s /EXCLUDE:%_EXCFILE%
del %_EXCFILE%

echo          
%_ZIP% %_TO%

echo          
rd %_TO% /s /q
GOTO END



:Nosource
echo           
GOTO END


:END
echo complete!
pause

위의 코드 를 웹. bat 에 저장 합 니 다. 이 스 크 립 트 가 있 습 니 다. 포장 하고 싶 을 때 클릭 하면 웹 이 자동 으로 처 리 됩 니 다.source. zip 입 니 다. 이렇게 하면 많은 시간 을 절약 할 수 있 고 실 수 를 피 할 수 있 습 니 다.

좋은 웹페이지 즐겨찾기