기 타 배치파일 해설 좀 부탁드립니다.
2021.06.29 23:05
안녕하세요?
각 폴더별로 압축할 일이 있어 찾던 중 7-zip으로 아래와 같은 스크립트를 발견하고 압축할 폴더들이 모여 있는 곳에서
관리자권한으로 실행했더니 system32 폴더안의 각 폴더들이 압축이 됩니다.
......이해가 안가는..........system32는 왜 건드리는지??
그런데 관리자권한이 아니면 잘 작동합니다.......... 왜 그렇지요??
for /d %%X in (*) do (for /d %%a in (%%X) do ( "C:\Program Files\7-Zip\7z.exe" a -tzip "%%X.zip" ".\%%X\" ))
왜 이럴까요?
참고로 혹시 필요하신 분 계실까봐............아래의 스크립트는 정상적으로 잘 작동합니다.
for /d %%X in (*) do "c:\Program Files\7-Zip\7z.exe" a "%%X.zip" "%%X\" |
댓글 [4]
-
DarknessAngel 2021.06.30 08:25
-
밤이슬216 2021.07.01 14:22
답급 감사합니다.
-
메리아 2021.06.30 10:45
원래 관리자 권한의 기본위치가 system32/syswow64 등이기 때문입니다.
방법 1. 맨처음에 CD /D "%~dp0" 실행하면 해결됨.
방법 2. 1번 방법은 경로문제를 다른쪽에서 일으킬 수 있음.
만에하나 다른쪽에서 문제가 될 경우를 대비하면(경로 변경 때문에 다른 배치파일이나 프로그램이 문제될 수 있음.)
<맨처음>
SETLOCAL ENABLEDELAYEDEXPANSION
pushd "%CD%"
CD /D "%~dp0"
...
<종료직전> - 맨 끝이 아님에 주의. 중간에 종료시키는 경우도 있기에.
popd
~종료코드
(사실 그냥 방법 1 한줄이면 대개 문제없는데, 간혹 여러가지 섞어쓰다보면 이상해지는 경우가 있어서 되도록 방법 2로 하는걸 추천.)
(pushd popd는 스택입니다. 즉, 시작할때 스택에 현재경로 밀어넣고 경로 바꾸고 작업한 뒤에, 현재 경로를 마지막에 복구 시키는 방식입니다.)
아래에 현재 경로를 확인하는 간단한 배치파일입니다.
복붙하시고, 각각 일반 실행과 관리자 실행을 해보세요.
어떻게 변하는지 잘 보시면, 어떻게 활용해야할지 알 수 있습니다.
----------------------------------------------------------------
@echo off
SETLOCAL ENABLEDELAYEDEXPANSION
echo.
echo.
echo 실행경로
echo %~dp0
echo 실행드라이브
echo %~d0
echo.
echo.
echo.
echo.
echo 최초 상태
echo 현재경로
echo %CD%
echo.
echo.
echo cmd 실행위치로 이동
pushd "%CD%"
CD /D "%~dp0"
echo 현재경로
echo %CD%
echo.
echo.
echo popd 후
popd
echo 현재경로
echo %CD%
echo.
echo.
pause
-
밤이슬216 2021.07.01 14:24
엄청난 답변에 너무 감사드립니다. 잘 공부해보겠습니다. 고맙습니다.
번호 | 제목 | 글쓴이 | 조회 | 등록일 |
---|---|---|---|---|
[공지] | 질문과 답변 게시판 이용간 유의사항 | gooddew | - | - |
90073 | 윈 도 우| 윈도우11 부팅시 자동로그인 설정방법문의, [5] | 좋은데이 | 639 | 07-12 |
90072 | 윈 도 우| 윈도11에서 StartIsBack 쓸 수 없을까요? [11] | 써니7 | 470 | 07-12 |
90071 | 윈 도 우| 윈도 설치시 글자가 께져있는데요 [4] | uiu | 168 | 07-12 |
90070 | 윈 도 우| 21H1(19043)으로 업그레이드 불가? [1] | 개척자 | 429 | 07-12 |
90069 | 윈 도 우| 이번에 풀린 윈도우11 버전이 어떤건가요? [2] | 컴알못러 | 555 | 07-12 |
90068 | 하드웨어| 타이거레이크 Xe그래픽과 UHD그래픽 차이가 뭔가요? [2] | 컴알못러 | 296 | 07-12 |
90067 | 윈 도 우| 랜덤님 120버전 윈11지원안되는듯한데 아무리해도 검은화면... [2] | 복태취업했 | 205 | 07-12 |
90066 | 윈 도 우| 윈도우11 작업표시줄 해제 [1] | 지구여행중 | 409 | 07-12 |
90065 | 윈 도 우| 윈도우11이 정식이 나왔나요? [4] | 심돌이 | 566 | 07-12 |
90064 | 윈 도 우| 비트라커 이상합니다. [4] | 스티어 | 185 | 07-12 |
90063 | 윈 도 우| [고전]Windows_7_K_22in1_with_IE11 설치후 이상 현상에대해 [1] | 핀볼 | 434 | 07-12 |
90062 | 윈 도 우| 부팅속도 떨어지는 이유가... [10] | reg | 657 | 07-12 |
90061 | 윈 도 우| 무선 WOL 기능 가능하나요? [2] | WB | 220 | 07-12 |
90060 | 하드웨어| 세컨컴 cpu 교체했는데 윈도우인식이 이상해요 [4] | 윈도우7만 | 399 | 07-12 |
90059 | 윈 도 우| 바이러스 깔렸어요. 도와주세요.ㅠ-ㅠ [7] | 창가에앉아 | 594 | 07-12 |
90058 | 윈 도 우| 오늘 윈도우업뎃했는데 그 내용을 알수 없나요? [1] | 컴알못러 | 161 | 07-11 |
90057 | 윈 도 우| 윈도우11 프린터 설치오류 [4] | 구리시 | 849 | 07-11 |
90056 | 기 타| djvu to pdf 용량이 너무 커지네요. [2] | nadaeri | 150 | 07-11 |
90055 | 소프트웨어| 윈도우 무비 메이커에 mp4파일이 소리만 나오네요 [4] | brucex | 242 | 07-11 |
90054 | 소프트웨어| TC에서는 오류인데, 탐색기는 괜찮은데... [2] | 젊은태양™ | 138 | 07-11 |
%dp%에서 현제 경로값 가져와서 이동하게 해주면 될듯합니다