1. 한글도스와 영문도스 전환법을 배워봅시다.

 

영문코드로 전환 : chcp 437
한글코드로 전환 : chcp 949

유럽코드로 전환 : chcp 850 프랑스 독일 네덜란드 브라질 영국 ...

 

 

2. 배치화일로 날짜로 폴더 자동생성

 

date /t > now.txt
for /f %%a in (now.txt) do md c:\backup_up\%%a

 

 

3. 날짜 및 시간 얻어오기 배치파일 |

 

@ECHO OFF
@TITLE Backing up source safe databases
FOR /F "tokens=2-4 delims=/ " %%i IN ('date /t') DO SET DATE=%%i-%%j-%%k
FOR /F "tokens=1-3 delims=: " %%i IN ('time /t') DO SET TIME=%%i-%%j-%%k
echo %DATE%
echo %TIME%
SET DATETIME=%DATE%-%TIME%
echo %DATETIME%
pause

 

4. 배치파일 각파일을 여러 폴더에 구분하여 넣기

 

@ECHO OFF
FOR %%A IN (*.TXT) DO IF NOT EXIST dFolder%%~nA MD dFolder%%~nA
REM FOR %%A IN (*.TXT) DO COPY %%A dFolder%%~nA\%%A > NUL
FOR %%A IN (*.TXT) DO MOVE/Y %%A dFolder%%~nA\%%A > NUL
TREE/F

 

 

5. 배치화일로 파일 내에 문자쓰기

 

@echo off
copy nul test.txt
echo.111>>test.txt
echo.abc>>test.txt
echo.123abc>>test.txt
echo.
echo.★test.txt★......
type test.txt

 

6. 배치파일로 폴더 내의 여러 파일을 각각 압축하기

예문

한 폴더내에

a.exe, b.exe, c.exe, d.exe.... 와 같이 여러개의 파일이 있는데

이 파일들을 각각

a.zip, b.zip, c.zip, d.zip 와 같은 식으로 압축을 하고 싶습니다.

 

답 : for /r %a in (*.exe) do alzip -a %a %a.zip

 

7. BAT-배치파일 만드는데 choice 가 안되네요??? winxp에선 안되는건가요???

어거지로 choice 구현

 

@ECHO off
cls
:start
ECHO.
ECHO 1. Print Hello
ECHO 2. Print Bye
set choice = '2'
set /p choice=Type the number to print text :
if not '%choice%'=='' set choice=%choice:~0,1%
if '%choice%'=='1' goto hello
if '%choice%'=='2' goto bye
ECHO "%choice%" is not valid please try again
ECHO.
goto start
:hello
ECHO HELLO1
goto end
:bye
ECHO BYE
goto end
:end

 

안되는 이유는 choice 안되는 이유 외부명령어이며, winnt 계열에서는 사라짐..

98이나 도스에서 choice 명령어화일을 복사해서 써야함..

 

8. 배치파일로 html 문서를 만드는 법좀,,,

예문: abc.bat

 

@echo off
copy nul test.html
echo.<html>>>test.html

.

.

.
echo.</html>>>test.html

이러면 test.html 라는 문서는 생성되는데 빈문서로 생성이 되는군요.

바로 < 와 > 때문에 태그코드가 적히지 않네요.

방법이 없을까요?

답: echo ^<html^> >> test.html

 

 

9. 내부 아이피와 유동아이피 변경 배치화일

 

***office.bat**************************************

copy con office.bat

echo off

echo *** IP and GATEWAY 변경 ***
netsh interface ip set address name="로컬 영역 연결" source=static xxx.xxx.xxx.xxx yyy.yyy.yyy.yyy zzz.zzz.zzz.zzz 1

 

echo *** DNS 삭제 ***
netsh interface ip delete dns "로컬 영역 연결" all

echo *** DNS 추가 ***
netsh interface ip add dns "로컬 영역 연결" aaa.aaa.aaa.aaa
netsh interface ip add dns "로컬 영역 연결" bbb.bbb.bbb.bbb

echo *** WINS 삭제 ***
netsh interface ip delete wins "로컬 영역 연결" all

echo *** WINS 추가 ***
netsh interface ip add wins "로컬 영역 연결" ccc.ccc.ccc.ccc

netsh interface ip add wins "로컬 영역 연결" ddd.ddd.ddd.ddd

ipconfig /all
pause

^Z
**************************************************

 

***home.bat**************************************

copy con home.bat

echo off

echo *** 유동IP로 할당 받음 ***
netsh interface ip set address name="로컬 영역 연결" source=dhcp

ipconfig /all
pause

^Z
**************************************************

 

10. 도스 상대 경로 윈도우 별..

 

-----------------------------------------------------------------------------

98에서 지원하는 환경변수

TMP=C:\WINDOWS\TEMP
TEMP=C:\WINDOWS\TEMP
PROMPT=$p$g
winbootdir=C:\WINDOWS
PATH=C:\WINDOWS;C:\WINDOWS\COMMAND
COMSPEC=C:\WINDOWS\COMMAND.COM
windir=C:\WINDOWS

 

----------------------------------------------------------------------------------

2000

%systemroot% 윈도우 시스템 폴더

%temp% 임시저장장소

%date% 날짜를 돌려준다.

%time% 시간을 돌려준다.

%path% 경로를 돌려준다.

%userprofile% 현재 로그인한 유저 폴더를 돌려준다.

%homedrive% 현재 경로명을 돌려준다.

%homepath% 현재 로그인한 유저 폴더를 돌려준다.

%windir% 윈도우 시스템 폴더

%path%

%temp%

%tmp%

%comspec%

%number_of_processors%

%os%

%pathext%

%processor_architecture%

%processor_identifier%

%processor_level%

%processor_revision%

--------------------------------------------------------------------------------

xp 기본으로 셋트된 환경변수

 

%ALLUSERSPROFILE%

%APPDATA%

%CLIENTNAME%

%CommonProgramFiles%

%COMPUTERNAME%

%ComSpec%

%HOMEDRIVE%
%HOMEPATH%

%LOGONSERVER%

%NUMBER_OF_PROCESSORS%
%OS%

%Path%

%PATHEXT%

%PROCESSOR_ARCHITECTURE%
%PROCESSOR_IDENTIFIER%

%PROCESSOR_LEVEL%

%PROCESSOR_REVISION%

%ProgramFiles%

%PROMPT%

%SESSIONNAME%
%SystemDrive%

%SystemRoot%

%TEMP%

%TMP%

%USERDOMAIN%

%USERNAME%

%USERPROFILE%

%windir%

%ALLUSERSPROFILE%

%APPDATA%

%CLIENTNAME%

%CommonProgramFiles%

%COMPUTERNAME%

%ComSpec%

%HOMEDRIVE%

%HOMEPATH%

%LOGONSERVER%

%NUMBER_OF_PROCESSORS%

%OS%

%Path%

%PATHEXT%

%PROCESSOR_ARCHITECTURE%
%PROCESSOR_IDENTIFIER%

%PROCESSOR_LEVEL%

%PROCESSOR_REVISION%

%ProgramFiles%

%PROMPT%

%SESSIONNAME%

%SystemDrive%

%SystemRoot%

%TEMP%

%TMP%

%USERDOMAIN%

%USERNAME%

%USERPROFILE%

%windir%

 

test 방법

c:\>dir %windir%

c:\>echo %date%

c:\>echo %time%

c:\>echo %usernaem%

 

응용방법

현재 시스템의 윈도우가 설치된 폴더를 알고싶다. 기본적으로 winnt와 windows 와 유저셋팅으로 윈도우 폴더가 정확하지 않습니다. 이걸..............상대경로로..

 

c:\>echo %windir%

 

현재 시스템의 로긴한 접속자의 상위폴더를 알고싶을때 ..

 

c:\> echo %username%

 

현재 시스템에 상대방에게 보이는 자기 도네임을 보고 싶을때..

 

c:\> echo %userdomain%

 

뭐 이런식....=_=''' 

 

%USERPROFILE%, %USERNAME%

 

1. %SystemRoot% : 윈도우가 설치되어 있는 폴더 위치

 


- 윈9x/ME -> C:\Windows 

 


- 윈NT/2000 -> C:\WINNT 

 


- 윈Xp -> C:\Windows 위치를 말합니다. 

 


2. %Root% : 드라이브의 루트 즉, 드라이브명

 


- C:, D:, E: ... Z: 

 


3. %System% : 윈도우의 시스템 폴더

 


- 윈9x/ME -> C:\Windows\System 

 


- 윈NT/2000 -> C:\WINNT\System32 

 


- 윈Xp -> C:\Windows\System32 

+ Recent posts