기 타 cmd스크립트 짜는데 왜이리 안되는지 도음좀 부탁드립니다 ㅠㅠ
2024.03.20 23:11
rem @echo off
set line=first
for /f "usebackq skip=1" %%i in (`wmic useraccount where name^='%%USERNAME%%' get sid`) do (
if %line% EQU first (set SID=%%i)
set line=no
)
@echo SID : %SID%
위처럼 윈도우 로그온된 SID를 따와서 변수 안에 집어넣을려고 하는데 뭔삽질을 해도 안되네요
wmic useraccount where name^='%%USERNAME%%' get sid 의 결과물은
3줄인데 첫번째줄은 제목행이고 두번째줄이 SID이고 3번째줄은 빈줄 입니다.
skip을 써서 첫번재줄 날리고 if문 으로 3번째 빈줄 날리기 위해 저렇게 짰는데
어떤 삽질을 다해봐도 최종결과물은 비어 있습니다.
댓글 [4]
-
라랑 2024.03.20 23:32
-
무월 2024.03.20 23:33
ChatGPT에게 올바르게 작동 되도록 수정을 요청했습니다. ㅡㅅㅡ;;;
@echo off
setlocal enabledelayedexpansion
set line=first
for /f "usebackq skip=1" %%i in (`wmic useraccount where name^='%USERNAME%' get sid`) do (
if "!line!"=="first" (
set SID=%%i
set "line=no"
)
)
echo SID : %SID%
pause
-
입니다 2024.03.21 06:01
@echo off
echo.
:G1
echo "1번"
FOR /f "tokens=1,2 delims==" %%A in ('wmic useraccount where name^="%USERNAME%" get sid /value') do (
If /i "%%A" equ "SID" Set "SID1=%%B" & GOTO :G2
Echo %%A)
:G2
echo.
echo "2번"
FOR /f %%A in ('wmic useraccount where name^="%USERNAME%" get sid ^| Find "-"') do (
Set "SID2=%%A" & GOTO :G3
Echo %%A)
:G3
echo.
echo "3번"
set /a Count=0
FOR /f %%A in ('wmic useraccount where name^="%USERNAME%" get sid') do CAll :GetLine %%A
GOTO :R123
:GetLine
set /a Count+=1
If "%Count%" equ "2" Set "SID3=%1" & GOTO :R123
echo %Count% %1
Exit /B
:R123
echo.
echo "결과"
echo "1번" %SID1%
echo "2번" %SID2%
echo "3번" %SID3%
:G4
echo.
echo "4번"
set /a Count=0
setlocal enabledelayedexpansion
FOR /f %%A in ('wmic useraccount where name^="%USERNAME%" get sid') do (
set /a Count+=1
If "!Count!" equ "2" Set "SID4=%%A" & echo "4번1" !SID4!
If defined SID4 GOTO :R4
echo !Count! %%A)
:R4
echo "4번2" %SID4%
endlocal
echo "4번3" %SID4%
:FInish
pause
-
일상다반사 2024.03.25 12:36
도움 주신 모든 분들께 감사드립니다.
덕분에 잘해결 되었습니다.
배치파일 스크립트가 생각보다 복잡하네요 ㅠㅠ
번호 | 제목 | 글쓴이 | 조회 | 등록일 |
---|---|---|---|---|
[공지] | 질문과 답변 게시판 이용간 유의사항 | gooddew | - | - |
100017 | 윈 도 우| 디스크 정리 어디로 갔어요? [7] | cline | 538 | 06-05 |
100016 | 윈 도 우| PE에서 소리가 나지 않아요 [6] | 즐거운컴 | 305 | 06-05 |
100015 | 윈 도 우| 윈도우11 부팅후 기본메모리 5g 입니다 [1] | MSTSC | 430 | 06-04 |
100014 | 기 타| 조금전에 연결할수 없다는 문구가 보였네요. | 부는바람 | 204 | 06-04 |
100013 | 윈 도 우| OS 이미지 제작 필요성 [9] | vtchoi87 | 666 | 06-04 |
100012 | 하드웨어| vmd 비활성화 [2] | vtchoi87 | 378 | 06-04 |
100011 | 소프트웨어| html 문서 형식 바꾸기 질문입니다. [26] | 파풍초 | 273 | 06-04 |
100010 | 소프트웨어| WimTools Wim 멀티부팅등록 오류 문의드립니다. [2] | 타천사둘리 | 310 | 06-04 |
100009 | 기 타| 윈포 회원님 Rainmeter 궁금한게 있습니다^^ [6] | 수리수리 | 432 | 06-03 |
100008 | 하드웨어| Mx keys [1] | Andor | 555 | 06-03 |
100007 | 윈 도 우| 무월님 한번 봐 주세요 [16] | 안다리엘 | 753 | 06-03 |
100006 | 윈 도 우| Windows 11 알림, 방해금지 끄는 방법 문의 [1] | 따운돌이 | 416 | 06-03 |
100005 | 윈 도 우| 컴퓨터 한 대만 아이피 할당을 수동으로 해두면 [14] | 현민지 | 495 | 06-03 |
100004 | 기 타| 엑셀 VBA_문의 "빈 셀 아래 몇개에 셀 삭제 " [1] | 눈사람4 | 221 | 06-03 |
100003 | 윈 도 우| 집앞의 큰나무님 궁금한게 있습니다^^ [2] | 수리수리 | 386 | 06-03 |
100002 | 윈 도 우| 인텔 15세대 SSD 인식 가능한 USB PE 구할수 있나요? [6] | 강남스타일 | 603 | 06-03 |
100001 | 윈 도 우| 윈도우 어떤것 쓰시나요? [13] | 가야악당 | 1138 | 06-02 |
100000 | 하드웨어| CPU 온도 문의입니다. [4] | 파풍초 | 768 | 06-01 |
99999 | 윈 도 우| windows11 26100.712pro 버전좀 부탁드립니다. [2] | 미지수 | 677 | 06-01 |
99998 | 기 타| 쪽지함이 열리지 않습니다. [10] | 하하5076 | 751 | 05-31 |
@echo off
for /f "tokens=2 delims== " %%a in ('wmic useraccount where "name='%username%'" get sid /value') do (
echo SID: %%a
)
pause
--------------- 아 꺼내서 쓰셔야 되니까 이게 아니겠군여 죄송합니다.
이럴땐 어쩔수 없이 goto 쓰기 싫지만 언능 튀어야 되더라구요; 배치에서 for문의 특징인듯
@echo off
setlocal enabledelayedexpansion
for /f "tokens=2 delims== " %%a in ('wmic useraccount where "name='%username%'" get sid /value') do (
set "SID=%%a"
goto :TTT
)
:TTT
echo SID: %SID%
pause