설치 / 사용기

기 타 WimLibBR - USORT.EXE 활용 Cmd 업데이트...

2021.10.28 13:06

왕초보 조회:851 추천:12

DarknessAngel님과 지후빠님 백업프로그램이 Cmd로 되어 있어서..덕분에 Cmd에 대해서 많은것을 배울수 있는 기회가 되었습니다

이 자리를 빌어 두분께 감사인사를 드립니다..

좋은일만 있으시길 바랍니다

 

Cmd로 된 백업프로그램에 대해서 공부할때마다..Cmd를 잘하시는 고수님뜰께서 얼마나 오랜시간을 열정을 쏟으셔서 공부를 하였을까 하는 생각을

합니다..Cmd는 간단(?)해서 입문하기도 좋지만...배우면 배울수로 이런것도 가능하구나 하고 놀랄때가 많이 있습니다

 

지난 사용기에서 WimLib를 이용한 백업프로그램에 디스크 정보를 USORT.EXE를 활용해서 보여주었습니다 

상황에 따라서 디스크 정보를 여러번 보여주여야 했서 cmd에 있는 폴더에 시작시에 txt로 추출후 이 txt를 읽어서 보여주는 방식을 했었습니다

가장 쉬운 방법이죠..

CD등 읽기만 가능한곳에서는 txt를 저장하지 못한다는 DarknessAngel 조언에..cmd에서 바로 정보를 바로 읽은 방법으로 바꾸었습니다

 

지후빠께서 지난 사용기에 댓글에 cmd로 정보를 추출하는 cmd를 첨부하여 주셨습니다  이 소스에는..정보 추출을 탭으로 구분을 해서 추출을하고

있습니다..덕분에..볼륨명에 공백이 있어도 바로 볼륨명이 추출이 됩니다...가장 어려(?)웠던 부분이 해결이 되어서 소스가 좀더 간단해 질수가

있게 되었습니다

 

아래는 지후빠님께서 첨부하여 주신 소스입니다

 

@reg query HKU\S-1-5-20 >nul 2>&1||(PowerShell start -verb runas '%0'&exit)

@echo off&cls&title Volume Info from USORT&pushd "%~dp0"&set i=6

 

for /f "delims=" %%i in ('usort.exe -mohong') do set /a i+=2

mode 65, %i%

call :DiskStatus

pause>nul&goto :eof

 

:DiskStatus

setlocal enabledelayedexpansion

  echo.&echo - 디스크 정보 -

  echo   ┌─────┬─────┬──────────────────┬─────────────┬─────────────┐ 

  echo   │ 번호│ 문자│    볼륨이름      │    전체용량 │    남은용량 │ 

for /f "tokens=1-9 delims= " %%a in ('usort.exe -mohong') do (set "tgb=      %%c" & set "fgb=      %%d"

  if %%h==0 (set "nam=                ") else if %%h==1 (set "nam=                ") else set "nam=%%g                "

  echo   ├─────┼─────┼──────────────────┼─────────────┼─────────────┤ 

  echo   │ %%a │  %%b │  !nam:~0,16!│!tgb:~-12! │!fgb:~-12! │ )

  echo   └─────┴─────┴──────────────────┴─────────────┴─────────────┘ 

endlocal

goto :eof

 

빨간 부분이 탭으로 구분하는 소스입니다..공백이 여러개 있는것 같은 느낌이죠. 실수할까봐...소스를 그대로 복사해서 활용을 하였습니다

볼륨명의 경우 이전에는..Cmd의 Vol 명령에서 추출을 했었습니다..

드라이브 갯수에 따라서 cmd 창 크기를 자동 설정하기 위해서 usort.exe가 2번 실행이 되고 있습니다

 

그리고 Win.tag 파일이나 Backup 폴더 검색은 아래처럼 했었습니다.. 아래는 예를 든것 뿐입니다

C~Z 까지 알파벳순으로 모두 검색을 했습니다..실제 시간이 얼마 걸리지 않는다고해서..있지도 않은 드라이브까지 확인을하는것은 낭비죠..

 

FOR %%a in (C D E F G H I J K L M N O P Q R S T U V W Y Z) do (

    If exist %%a:\%sWinTag% ( Set Windrv=%%a )

    If exist %%a:\%sBackFolder%\ (Set Backdrv=%%a)

)

 

 

DarknessAngel님과 지후빠님 백업프로그램 관련해서 cmd 작업을 하면서 구글들에서 배운것이 있어서.. 그 동안 하지 못했던 새로운 방식으로

Cmd를 구성을 하여 보았습니다

 

USORT.EXE 에서는..하드디스크,USB만 검색을 해서 보여줍니다..볼률명도..지후빠님 덕분에 간단히 추출을 할수가 있어서..USORT.EXE 에서

보여주는 정보를 모두 배열에 넣고...이 배열들을 활용해서 디스크 정보를 보여주고 여기서 추출한 드라이브 문자로 Win.tag나 Backup폴더 검색을

하는것으로 하여 보았습니다

 

디스크 정보를 여러번 보여주어야 하는 경우 배열에 있는것을 보여주게 되어서..좀더 빠른것 같은 느낌입니다

Win.tag나 Backup 폴더가 없는 경우 윈도우 파티션이나 백업 파티션 드라이브 문자를 입력시에도..C에서 부터 Z까지 확인하는것이 아니라..

USORT.EXE 에서 추출한 드라이브 문자와 비교해서 체크를 하기 때문에 없는 드라이브까지 검사하지 않아서 쓸데없는 짓을 하지 않네요.

 

그 동안 백업프로그램에 Cmd를 활용을 했었지만..좋은 방법들이 있는데 너무 몰라서 기초적인 명령어로 소스가 복잡하게 활용을 했던것 같습니다

컴퓨터 관련해서는 항상 같은 마음이네요..Cmd도 배우고 또 배워도 항상 부족하고 새롭기만 합니다..

 

부족한 부분에 대해서 조언을 해주신분이 있으셔서 추가를 하면서 USORT.EXE 에서 보여주는 디스크 정보를 배열에 넣어서 활용을 하여보았습니다

기존 Cmd하고는 체계가 달아져서..처음부터 다시하는 기분이네요

 

 

1. 바이러스 검출이 되지 않지만..프로그램들은 wim안에 있습니다...

1.jpg

 

2. 이 런처 원본은..바이러스 검출이 거의 없습니다..이런저런 기능들을 소스에 추가를 하게 되면서 x64 버전도 바이러스 검출이 되고 x86은 당연히..더

  많이 검출이 되네요..바이러스 프로그램에서 예외 폴더로 지정을 하면 되지만...검출 자체가 되지 않은 런처가 좋죠.. 이것을 아무리 고민도 해보고

  구글에서 찾아보아도 원하는 모습을 런처를 찾지 못하겠습니다...간단히..로켓독으로 아이콘을 보여주는것으로 해야 할까요

2.jpg

 

3. 백업을 진행하여 보겠습니다

3.jpg

 

4. USORT.EXE 에서 추출한 정보를 보여주고 있습니다.. USORT.EXE 처음 실행시 배열에 넣고..cmd창 크기를 결정을 합니다

   아래처럼 cmd창에서 보여주는 것은 배열에 저장한것을 보여줍니다..

   윈도우 파티션, 백업 파티션을 컬러로 표시를 했다가..pe에서는 색상이 윈도우에서 처럼 선명하지 않아서..윈도우 파티션, 백업파티션 표시를 

   특수기호로 하였습니다

   Win.tag 파일과 Backup 폴더 검색은..C~Z까지 순서대로 검색을 하지 않고 2번에 보이는 C D E W 에서만 검색을 합니다

4.jpg

 

5. Win.tag 파일을 만들기 위한 윈도우 파티션 드라이브 문자 입력도.. C D E W 와 비교해서 일치 할때만 다음으로 진행을 합니다..일치후에도..

   Backup 폴더가 있는 E 드라이브 인경우 메세지를 보여주도록 되어 있습니다

5.jpg

 

6. 추출한 C D E W 가 아닌 z를 입력해서 다시 처음부터 보여주고 있습니다.이렇게 계속 디스크 정보를 보여야 해서 매번 USORT.EXE로 추출할수가

 없어서..이미 추출해서 넣어 놓은 배열을 활용하게 된것입니다

6.jpg

 

7. C 입력후..C 드라이브에 Win.tag가 만들어 지고 다시 정보를 보여주고 있습니다..문제가 없다면 백업을 진행해야죠..

7.jpg

 

8. Win.tag가 2개인 경우 메세지입니다...디스크 정보에 ▶ 로 표시를 해놓아서..볼륨명 확인도 좀더 편하게 할수 있습니다

   모든 Win.tag를 삭제후..입력한 드라이브 문자에 새로 만드어 주는 방식으로 하였습니다

8.jpg

 

9. 이제서야 백업을 확인해 볼수 있게 되었습니다

9.jpg

 

10. 백업이 진행중입니다

10.jpg

 

11. PE에서 백업,복원 결정을 백업파일 유무에 따라서 진행이 되기 때문에 기존 백업파일이 있는 경우 다시 백업을 하기 위해서는 백업파일을 삭제를

  하고 pe로 부팅후 백업을 하였었습니다..이 경우 백업을 하지 않고 취소를 한다면...그냥 기존 백업파일만 날리는 문제가 생기죠..조언을 해주신 분이

  있어셔서 이문제에 대해서도 조치를 하였습니다

 

  기본 백업파일이 있는 경우 Backup.Old.wim으로 저장을 할지를 선택할수 있게 런처 Setting.ini에 옵션을 추가하였습니다

11.jpg

 

12. 윈도우에서 백업파일이 있는 경우 백업을 진행하는 경우입니다..Backup.Old.wim으로 저장하는 경우 메세지에 표시가 됩니다

   Setting.ini에서 Old 옵션이 없어서 아래처럼 메세지에 내용이 없습니다..Old로 저장하는 경우 PE에서 백업 취소를 해도 Backup.Old.wim이 있어

   서 기존 백업파일을 지킬수가 있습니다..

   아래처럼..Old 옵션이 없는 경우가 문제죠...Backup.wim 파일이 있으면 PE에서는 당연히 복원이 진행됩니다

12.jpg

 

13. Backup.wim 파일이 없어서 로고파일과 메세지가 백업 안내를 하고 있습니다

13.jpg

 

14. Old 옵션이 없어서 임시로 Backup.wim 파일을 Backup.Tmp.wim으로 바꾸어 놓았습니다..백업이 시작될때 삭제를 합니다..

14.jpg

 

15. cmd에서 백업을 하지 않고 취소시 다시 Backup.wim으로 원상 복귀합니다... 이제서야 조금 안전해진것 같습니다

15.jpg

 

16. 복원을 진행하여 보겠습니다

16.jpg

 

17. 복원 메세지입니다

17.jpg

 

18. 복원이 진행중입니다

18.jpg

 

19. 마무리

WimLibBR에 디스크 정보를 보여주는 USORT.EXE 활용시 윈도우 파티션과 백업파티션를 정확히 확인할수가 있어서 좋지만..디스크 정보를 보여줄

때마다..USORT.EXE를 실행하는것은 낭비같고..Win.tag와 Backup폴더 검색도 C에서 부터 Z까지 검색하는것도 낭비여서..디스크 정보를 배열에

넣어서 활용하여 보았습니다

 

Cmd에서 자료를 배열에 넣어서 활용하는것은 이미..입니다님께서 소개를 하신적이 있으시죠

고수님의 작품이나..사용기는 초보에게 항상 많은것을 배울수 있는 기회가 됩니다.. 배운것들을 이제서야 활용을 해보게 되었습니다

 

Win.tag 파일과 Backup폴더가 없을때 만든는것만 있으면 좀 간단해지는데..1개 이상일때까지 메세지가 있어서...이번에도.지인분께서 소스를 보고

좀더 이해를 잘되시게 간단하게 줄여본다고 해도..고수님들처럼 간결하게 되지는 않네요..역시..초보의 한계가 있습니다

 

오늘 하루도..웃음이 가득한 일만 있으시길 바랍니다

 

 

번호 제목 글쓴이 조회 추천 등록일
[공지] 사용기/설치기 이용안내 gooddew - - -
1554 기 타| 지후빠님 SnapShotBR.ahk 멀티 OS에서 활용하기 입니다.. [10] 왕초보 855 10 10-31
1553 기 타| 디스크 정보는 드라이브 문자,볼륨명만 보이도록 하였습니다. [9] 왕초보 796 11 10-31
1552 기 타| Widows 10 백업 복구 UI [11] 에세3밀리 1342 15 10-31
1551 기 타| 지후빠님 스냅샷 frontend SnapShotBR.ahk 버전 사용기입니... [8] 왕초보 785 12 10-30
1550 기 타| PRINCE PE에서 wmic를 활용하여 보았습니다.. [9] 왕초보 985 10 10-29
1549 기 타| (수정) mania*님 Win10 PE 20H1 x64 Lite 간단한 사용기입니다 [12] 왕초보 1330 11 10-28
» 기 타| WimLibBR - USORT.EXE 활용 Cmd 업데이트... [10] 왕초보 851 12 10-28
1547 기 타| 크롬에서 가끔 ....... [2] 카니발 958 0 10-27
1546 기 타| 백업프로그램 4개 통합에..결국 Cmd도 없애 버렸네요.. [22] 왕초보 1396 23 10-27
1545 기 타| sunshine님의 Snapshot 한글버전 사용기입니다 [8] 왕초보 977 11 10-25
1544 기 타| Cmd 1개에 백업프로그램 4개를 통합하여 보았습니다 [21] 왕초보 950 16 10-24
1543 기 타| 백업,복원 Cmd - 소스를 간단하게 정리(?)를 해버렸습니다 [14] 왕초보 1159 14 10-23
1542 기 타| 민밋한 대기시간 바꿔보기 [33] 집앞의_큰 1401 35 10-21
1541 기 타| WimBootBR AHK를 Tray용 Launch로 활용하여 보았습니다. [19] 왕초보 940 8 10-21
1540 기 타| Windows 업데이트 설치하기3 - msu 그대로 설치.bat [19] suk 1448 28 10-21
1539 기 타| 큰**님의 찾아다니는 부팅 두 번째 사용기 [7] 천룡비 322 6 10-21
1538 기 타| 21H2-19044_1319 [144] 첨임다 2575 108 10-21
1537 기 타| 찾아다니는 부팅 두번째 사용기 [18] do98 565 14 10-20
1536 기 타| WimBootBR에 기존 SnapShot Cmd 수정해서 활용하기 [15] 왕초보 790 10 10-20
1535 기 타| WimBootBR - LaunchBar,Cmd자동실행 적용 [9] 왕초보 1235 15 10-19
XE1.11.6 Layout1.4.8