배치파일
- 배치 파일(batch file)은 명령 인터프리터에 의해 실행되게끔 고안된 명령어들이 나열되어 있는 텍스트 파일이다. - cmd.exe와 같은 셸 프로그램이 파일을 읽어 명령어를 줄 단위로 실행한다. - 배치 파일은 보통 실행 파일을 자동으로, 연속적으로 실행할 때 유용하며 시스템 관리자가 따분한 일들을 자동화하기 위해 자주 사용한다. <참고 및 인용 : https://ko.wikipedia.org/wiki/배치_파일> |
외부 활동이나 작업 시에 유/무선 연결이나 IP 재할당 등의 이유로 네트워크 설정을 변경하곤 합니다.
인터페이스 활성화부터 네트워크 연결 정보 등 번거로운 작업을 도와줄 배치파일 예시를 하나 작성해봤습니다.
본문
@Echo off @Chcp 65001>nul @Color F0 @Title Automation_Net @cls :--------------------------------------------------------------------------------------------- :관리자 권한 요청 >nul 2>&1 "%SYSTEMROOT%\system32\cacls.exe" "%SYSTEMROOT%\system32\config\system" If '%ErrorLevel%' NEQ '0' ( Goto UACPrompt ) Else ( Goto Got_Admin ) :UACPrompt Echo Set UAC = CreateObject^("Shell.Application"^) > "%temp%\Get_Admin.vbs" Set Params = %*:"="" Echo UAC.ShellExecute "cmd.exe", "/c %~s0 %Params%", "", "RunAs", 1 >> "%temp%\Get_Admin.vbs" "%temp%\Get_Admin.vbs" Del "%temp%\Get_Admin.vbs" Exit /B :Got_Admin Pushd "%CD%" CD /D "%~dp0" :--------------------------------------------------------------------------------------------- Set z_Clo=예상되지 않는 행동입니다. :Loop cls Echo. Echo ===================자동화 도구=================== Echo. Echo. 번 호 작 업 목 록 Echo. Echo. 1. 와이파이 활성화 Echo. 2. 이더넷 활성화 Echo. 3. 네트워크 연결 지점 확인 Echo. 0. 종 료 Echo. :List Echo. Set /p Question="번호를 입력하세요 : " If %Question%==1 ( Goto Wi-Fi ) Else If %Question%==2 ( Goto Ethernet ) Else If %Question%==3 ( Goto Check_Net ) Else If %Question%==0 ( Goto Quit ) Else ( Echo %z_Clo% Goto List ) :Wi-Fi Echo. Echo Wi-Fi 인터페이스 활성화 Netsh Int Set Int Wi-Fi Enabled>Nul Echo. Echo Wi-Fi 자동 구성 활성화 Netsh Wlan Set AutoConfig Enabled=Yes Int=Wi-Fi>Nul Echo. Echo 이더넷 비활성화 Netsh Int Set Int "이더넷" Disabled>Nul Echo 완료 Goto LookUp :Ethernet Echo. Echo. Wi-Fi 자동 구성 비활성화 Netsh Wlan Set AutoConfig Enabled=No Int=Wi-Fi>Nul Echo. Echo Wi-Fi 인터페이스 비활성화 Netsh Int Set Int Wi-Fi Disabled>Nul Echo. Echo 이더넷 활성화 Netsh Int Set Int "이더넷" Enabled>Nul Echo. Echo 완료 Goto LookUp :Check_Net Echo. Echo 인터페이스 목록을 불러옵니다. Netsh Int Show Int | Findstr /n ^^ :Check_Num Set /p z_Num="번호를 입력하세요 : " If %z_Num%==4 ( Goto Check_Net_Wi-Fi ) Else If %z_Num%==5 ( Goto Check_Net_Ethernet ) Else ( Echo %z_Clo% ) Goto Check_Num :Check_Net_Ethernet Echo. Echo. 네트워크 설정값 확인.. Pause Ipconfig -all Echo. Echo 네트워크 연결 확인.. Pause Netstat -abnof Echo. Echo 완료 Goto LookUp :Check_Net_Wi-Fi Ehco. Echo. 무선 네트워크 정보 확인.. Pause Netsh Wlan Show Networks Mode=Bssid Echo. Echo 인터페이스 확인.. Pause Netsh Wlan Show Int Echo. Echo 완료 Goto LookUp :LookUp Echo. Set /p Question.[1]="다른 작업을 수행하시겠습니까? (y/n) : " If %Question.[1]%==y ( Goto Loop ) Else If %Question.[1]%==n ( cls Echo 작업을 종료합니다. Echo. Goto Quit ) Else ( cls Echo %z_Clo% Goto Lookup ) :Quit |
위 예시는 단순 참고용이며 개인 설정이나 환경에 따라 정상 작동하지 않을 수 있습니다.
배치파일 실행 시 다음과 같은 화면이 출력됩니다.
기능은 다음과 같습니다.
1. Wi-Fi 인터페이스 및 자동 구성을 활성화하고 이더넷을 차단합니다.
2. Wi-Fi 자동 구성 및 인터페이스를 차단하고 이더넷을 활성화합니다.
3. 유/무선 네트워크 환경을 사용자가 선택하여 정보를 표시합니다.
- 유선 : TCP/IP 설정값 및 접속 시간을 출력합니다.
네트워크가 연결된 지점을 확인합니다 (EX_ 연결 사이트, 서비스, 프로그램 등) - 무선 : 주변 무선 네트워크를 불러옵니다 (종류 및 신호 세기, 식별자 등)
연결된 와이파이의 자세한 정보를 출력합니다 (송수신 속도 및 연결 상태, 주소 등)
배치파일은 대개 필요한 명령만 간추려서 사용합니다.
즉, 위와 같이 길게 작성하는 경우가 굉장히 드물며 편의를 위해 예시처럼 작성했다는 점 알아두시면 좋겠습니다.
글은 짧게 끝내겠습니다
감사합니다.
****관리자 권한 요청 ****
Is it possible to automatically run a batch file as administrator
I am wondering whether it is possible to automatically open a batch file as admin when you double-click on the batch file, because the commands need to be run with administrative rights. Note: I a...
superuser.com
반응형
'stdFrog > 알쓸잡' 카테고리의 다른 글
[Powershell] 파워쉘 출력 서식 변경 및 업데이트(ps1xml) (0) | 2022.01.12 |
---|---|
[Google Sheet] 구글 스프레드 시트 함수 예시 (0) | 2022.01.09 |
[Windows CMD] 파일 백업 & 갱신된 파일 목록 확인 (0) | 2021.06.30 |
[Windows MS-Setting] 윈도우 설정 바로가기 명령어 URI 목록 (0) | 2021.05.20 |
[Excel] 엑셀 텍스트 마법사, 메모장 내용 엑셀로 변환하기 (0) | 2021.05.09 |
댓글