Post

Batch Script Manual

목차


관리자 권한 실행방법

아래 코드를 복사

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
set uaccheck=0
:CheckUAC
>nul 2>&1 "%SYSTEMROOT%\system32\cacls.exe" "%SYSTEMROOT%\system32\config\system"
if '%errorlevel%' NEQ '0' (
    goto UACAccess
) else ( goto Done )

:UACAccess
echo "Request to get admin permission"
echo Set UAC = CreateObject^("Shell.Application"^) > "%temp%\uac_get_admin.vbs"
set params = %*:"=""
echo UAC.ShellExecute "cmd.exe", "/c %~s0 %params%", "", "runas", 1 >> "%temp%\uac_get_admin.vbs"
"%temp%\uac_get_admin.vbs"
del "%temp%\uac_get_admin.vbs"
exit /b

:Done
echo "Success to get admin permission"
echo.

관리자권한 취득 경고 메시지 없애는 방법

해당 코드를 복사/붙여넣기 하여 스크립트를 실행하게 되면
“게시자를 알 수 없는 앱이 디바이스를 변경할 수 있도록 허용하시겠습니까?” 라는 메시지가 뜬다.

해당 메시지를 없애는 방법이 있지만 해당 메시지를 없앨 경우
어떤 프로그램이 관리자 권한 취득을 시도하는지 알 수 없기 때문에 보안상의 문제가 발생할 수 있다.

Win + R 을 통해 실행창을 열어 UserAccountControlSettings.exe 를 실행한다.

알리지 않음 (제일 밑 항목) 을 선택한다.

“확인” 버튼을 누르고 스크립트를 실행하여 경고창이 안뜨는지 확인한다.

심볼릭 링크 생성

윈도우에는 바로가기 라는 심볼릭 링크 개념이 존재하지만 cmd에서는 사용할 수 없다.
cmd에서도 사용 가능한 형식의 심볼릭 링크를 만드는 법을 기술한다.

1
mklink /d "<링크 path/이름>" "<링킹될 실제 위치>"

예시 ) 홈 디렉토리에 wsl의 /home/username 을 링크하는 wslhome 이라는 이름의 심볼릭 링크를 홈 디렉토리에 만든다.

1
mklink /d "%homepath%\wslhome" "\\wsl$\Ubuntu-22.04\home\username"
This post is licensed under CC BY 4.0 by the author.