반응형
개요
아래와 같은 명령어를 실행한다고 해 봅시다.
@echo off
@set YEAR=%date:~0,4%
@set MONTH=%date:~5,2%
@set DAY=%date:~8,2%
@set HOUR=%time:~0,2%
@set MINUTE=%time:~3,2%
@set SECOND=%time:~6,2%
@set POSTFIX=%YEAR%-%MONTH%-%DAY%_%HOUR%-%MINUTE%-%SECOND%
@set SSID=wifi_xxx
rem 연결된 SSID 확인
for /f "tokens=3" %%i in ('netsh wlan show interface ^| findstr /i "SSID"') do set "myssid=%%i" & goto next
:next
echo %myssid%
set "myssid=%myssid: =%"
rem 연결상태 확인
for /f "tokens=3" %%i in ('netsh wlan show interface ^| findstr /i "상태" ^| findstr /i "연결됨"') do set "status=%%i" & goto next2
:next2
echo "%status%"
if /i "%status%"=="연결됨" (
echo "Status Good"
echo %POSTFIX%_good >> a.out
) ELSE (
echo "Reconnect"
netsh wlan connect name="%SSID%"
echo %POSTFIX%_reconnect >> a.out
)
한글이 들어 간 부분 때문에 명령어가 제대로 실행되지 않는 경우가 발생합니다.
해결방안
파일의 인코딩 형식을 바꿔 줍니다.
윈도우에서 bat 파일 생성 시 기본으로 utf-8형식으로 생성되어 있을겁니다.
utf-8형식을 ANSI로 변경해 줍니다.
텍스트편집기(아래는 Notepad++입니다.)를 사용하여 인코딩을 ANSI로 변경한 뒤 저장 버튼을 눌러줍니다.
메모장(Notepad)일 경우
파일 > 다른이름으로 저장 > 인코딩을 선택하여 ANSI를 선택 후 저장 버튼을 눌러줍니다.
저장 버튼을 눌러줍니다.
다른 이름으로 저장 확인이 뜹니다. 예를 눌러 저장하면 ANSI로 파일형식이 변경됩니다.
결과 확인
한글이 들어간 명령어를 실행해 보겠습니다.
정상적으로 잘 실행되네요~
반응형
'OS > Windows' 카테고리의 다른 글
Window에서 wget 사용하기 (3) | 2021.03.09 |
---|---|
Batch파일 관리자 권한으로 실행 (0) | 2021.03.08 |
WiFi 연결 유지하기(윈도우) (0) | 2021.02.09 |
안전모드에서 윈도우 인스톨러(windows installer)를 실행 할 수 없을 때 (0) | 2016.06.10 |
File Zilla 계정 정보 백업 (0) | 2014.03.11 |