기 타 소소한 배치파일 예제 3가지
2017.10.24 16:58
그냥 제가 필요해서 머리 싸매고 만들다가 대충 원하는대로 나온듯해서 공유합니다.
배치파일 안에 주석 (::으로 시작하는부분) 을 참고하세요.
tasklist 기능을 이용하여 특정 프로세스가 종료될때 특정한 동작을 시행하게 합니다.
tasklist /fi "imagename eq TrueImage.exe" | findstr TrueImage
IF "%ERRORLEVEL%" == "0" goto WAIT
볼륨을 선택하면 전체, 여유, 사용중인, 사용중인 용량의 60%를 계산합니다.
볼륨을 선택하면 해당 볼륨이 Diskpart에서 몇번 디스크, 몇번 파티션인지 알아냅니다.
이거보다 더 깔끔하게 짜는 방법이 분명 있을듯 하긴 한데 일단 되긴 됩니다.
더 좋은 방법을 아시는분은 가르침 부탁드립니다 (__)
댓글 [11]
-
dansan 2017.10.24 17:03
-
cungice 2017.10.24 19:50
수고 많으셨습니다. 감사합니다.
-
샤 2017.10.24 21:40
수고하셨습니다.
-
지연서연아빠 2017.10.25 17:18
프로세스 종료 추적.cmd 로 Trueimage 백업 및 복원 아주잘됩니다. (PE 리부팅후에도 정상)
잘사용하겠습니다.
혹시 Backupper는 안되나요? ㅎㅎ
감사합니다.
-
히이이잌 2017.10.25 17:37
배치파일을 메모장으로 열어서,
로그 파일 경로를
X:\ProgramDaTA\AomeiBR\
으로
실행파일 경로를 backupper 경로로 변경하신다음,
작업관리자를 켜놓은상태로 백업퍼 프로세스를 관찰해보세요.
몇몇 자동압축풀림형 단일파일들은 실행파일이 얼마지나면 꺼지고 내부의 실행파일만 프로세스 목록에 남아있기 때문입니다.
예를 들어 트루이미지의 경우 trueimage_starter 프로세스가 일정 시간이 지나면 사라지고 trueimage만 남게 되어서,
완료까지 기다리는 call 이나 start /w를 걸어도 중간에 배치파일이 그냥 진행되어버립니다.
따라서 계속 지속되는 프로세스의 이름을 알아내신다음
(그냥 실행할때의 프로세스와 계속 같을수도 있음)
배치파일 아래쪽의 tasklist 명령에서 프로세스명을 원하는 프로세스 명으로 교체하시면 됩니다. -
지연서연아빠 2017.10.25 17:53
히이이잌님 답변주셔서 감사합니다.
알려주신방법대로 공부하도록 하겠습니다.
고맙습니다 ^^
-
지연서연아빠 2017.10.26 10:26
히이이잌님 알려주신 방법대로 하니 잘됩니다.
잘 사용하겠습니다.
감사합니다
-
현토리 2017.10.25 18:34
감사합니다. ^^
-
메아리 2017.10.25 21:33
감사합니다.
수고하셨습니다.^^
-
adda 2017.10.29 02:07
히이이잌 님 감사합니다.
디스크및파티션 번호 추출 (1) 이것만
@echo off
cd /d %~dp0
bcdedit >nul
if %errorlevel% equ 1 echo 관리자 권한이 아닙니다. & timeout /t 5 /nobreak >nul & exit:start
set instdsk=0
set instpar=0
clsecho.
set /p volume= 볼륨 입력 (알파벳만) :
:: 볼륨 정보를 표시하기 위한 스크립트 작성:: 스크립트 실행결과를 vol.txt에 저장
(echo sel vol %volume%
echo detail vol
echo lis par
echo exit) | diskpart > vol.txtfor /f "tokens=3 usebackq delims= " %%a in (`"find "* 디스크" "vol.txt""`) do set instdsk=%%a
for /f "tokens=3 usebackq delims= " %%b in (`"find "* 파티션" "vol.txt""`) do set instpar=%%b:: 결과 출력
echo.
echo 선택된 볼륨은 디스크 %instdsk% 의 %instpar% 번 파티션입니다.
echo.
IF %instpar% == 0 echo %Volume% 볼륨이 존재하지 않거나 오류입니다.:: 사용된 임시파일 삭제
del /s /q vol.txt >nulpause>nul
goto start
조금 바꾸었습니다.
-
히이이잌 2017.11.01 14:57
find명령과 |기호를 저렇게 응용할수도 있군요 좋은 참고가 되었습니다
감사드립니다
감사합니다^^