아별이 하나씩 정리해 가기..


내 System에 대한 정보를 History관리해보자.
아래 리스트를 복사해서 배치파일(.bat) 파일로 만들어 놓고, 가끔 돌려서 히스토리 관리를 해보자.

REM MY SYSTEM 현황 백업하기
ipconfig /all > F:\mysystem_ipconfig_all.txt
systeminfo > F:\mysystem_systeminfo.txt
netstat -e > F:\mysystem_netstat-e.txt
assoc > F:\mysystem_assoc.txt
mod > F:\mysystem_mod.txt
openfiles > F:\mysystem_openfiles.txt
tasklist > F:\mysystem_tasklist.txt
PERFMON.MSC
netstat -a > F:\mystatus_netstat-a.txt


REM 폴더 트리 구조 백업하기
tree C: > F:\mysystem_tree_C.txt
tree D: > F:\mysystem_tree_D.txt
tree E: > F:\mysystem_tree_E.txt
tree F: > F:\mysystem_tree_F.txt
tree P: > F:\mysystem_tree_P.txt



1. FC명령어 : 두 파일 또는 파일의 집합을 비교하고 둘 사이의 다른점을 화면에 표시합니다.
        fc/n org.txt copy.txt
        fc/n org.txt copy.txt > result.txt

2. type : 텍스트 내용을 화면에 표시해준다.
        type serial.txt
        dos창에서 윈도우를 설치할때, CD롬에 있는 serial.txt 파일의 내용을 확인할 때 사용한다.

3. cmd를 눌러 도스 실행창을 띄워서 하는 작업들..

        1) ipconfig /all : 내 컴퓨터의 ip 세팅의 세부 내역을 볼 수 있다.
                  - ipconfig /release : 내 컴퓨터에 연결된 모든 연결을 해제한다. 해킹이 의심된다면 연결을 모두 해제시키고 패치를 돌려보자.
                  - ipconfig /renew : 네트워크를 다시 연결한다. 네트웍 문제일때 재부팅할 필요없이.. 연결 해제 후 다시 연결하면 된다.
        2) netstat -a : 내 컴퓨터의 포트의 현황을 볼 수 있다. (어디에 접속했는지, 어디서 접속했는지 등)
        3) tracert 사이트명 : 해당 사이트에 접속하는 경로를 보여준다.
        4) dir/d/b/a:-d > list.txt : 해당 폴더의 파일명 목록을 lst.txt라는 파일로 만들어 저장해준다.
        5) systeminfo | more : 시스템에 대한 상세 정보를 볼 수 있다.
        6) shutdown -s -t 600 : 10분 뒤 컴퓨터를 종료시켜라.
                  - shutdown –a : 시스템 종료 명령 중단
                  - shutdown –i : GUI환경의 예약 종료 가능
        7) netstat –a : 연결 및 수신 대기중인 항목 보기
                  - netstat –b : 현재 네트워크를 사용 중인 프로그램 보기. 공격자의 명령을 대기하는 스파이웨어 등을 색출 시 사용.
                  - netstat –e : 네트워크 통계 확인. 랜카드가 작동한 이래의 작동 통계.
        8) date : 현재 지정된 날짜를 확인하고, 시스템의 날짜를 변경한다.
        9) exit : 도스 명령창을 종료한다.


--- 이하 퍼옴 --------------------------------------------------------------------------------------------------------------------------------

■ batch file programing

1. 문자열 변수를 정의하고 대입하고 출력하는 예제..
출처 : mwultong블로그
@echo off
:: 문자열 변수 정의 + 문자열 대입
set FOO=AAABBBCCCDDD

:: 문자열 출력, 도스창 화면에 프린트하기
echo %FOO%
:: 출력 결과: AAABBBCCCDDD

:: 문자열 추출
:: 원본 문자열의 6번째 글자부터 시작하여 3글자까지만 추출
set BAR=%FOO:~6,3%

:: 추출된 문자열 출력
echo %BAR%
:: 출력 결과: CCC

:: 변수 지우기
set FOO=
set BAR=

2. BAT 함수와 서브루틴 파라미터 구현 예제
(5,6이라는 변수를 곱해서 30이라는 결과값을 화면에 출력)
출처 : mwultong블로그
@echo off
setlocal

call :FOO 5 6

goto :EOF

:FOO
set /a RESULT=%1 * %2
echo %RESULT%

소스 맨 아래에 FOO 라는 간이 함수(라기보다는 라벨)가 정의되어 있습니다. 반환값을 돌려주지는 못하고 그냥 결과를 화면에 출력합니다. 인수를 받을 때에는 %1 로 첫번째 인수를 받고 %2 로 두번째 인수를 받는 식입니다.
함수 정의 부분이 시작되기 전에 goto :EOF 문을 넣어주어 배치파일을 종료시켜야 합니다. 그렇지 않으면 함수 정의 부분까지 다시 실행되어 버립니다.

3. Bat파일에서 특수기호나 줄바꿈 출력하기
줄바꿈 : echo. (echo다음에 .을 바로 붙인다. 한칸 띄면 .만 출력됨)
특수기호 : < (^< : <앞에 캐럿(^)을 붙여줘야 <가 출력된다.)
                   > (^>)
                   ^ (^^)


■ 텍스트 파일 내의 특정 단어 찾기
출처 : mwultong블로그
유닉스의 grep 과 유사한 명령어가 윈도우에 있는데, findstr 이라는 이름으로 되어 있습니다. 정규식(정규표현식)도 사용이 가능합니다. 그러나 유닉스 grep처럼 그렇게 강력하지는 않습니다.
윈도우의 도스창(CMD 명령프롬프트)에서,
findstr/?
이라고 입력하면 도움말이 나옵니다. 사용법도 그렙과 비슷합니다. 예를 들어, 현재디렉토리에 있는 모든 txt 확장자를 가진 텍스트 파일들 속에서 apple 이라는 단어를 대소문자 구분없이 찾으려면
findstr /i apple *.txt
이렇게 하면 됩니다. 모든 파일(*.*)에서, 아라비아 숫자로만 이루어져 있는 행들을 찾으려면
findstr ^[0-9]$ *.*
이렇게 정규식을 사용합니다.


■ 갱신파일만 리스트 보기
출처 : mwultong블로그
갱신파일이란, 마지막 백업 이후로, 수정된 파일을 의미합니다. A 라는 "저장 속성"이 부여되어 있습니다. A 라는 "저장 속성"이 부여되어 있다는 이야기는, 수정된 이후로 백업을 아직 하지 않았으니 백업 대상에 추가하라는 뜻입니다.
백업을 한 후에는 A 라는 "저장 속성"을 OFF 시켜 주는 것이 원칙입니다. 그래야, 백업 이후로 수정이 되었는지 알 수 있습니다. 예를 들어 test.txt 라는 파일이 있을 때, 백업 프로그램이 이 파일을 CD-ROM 등에 백업한 후, A속성을 제거합니다. 그런 후 사용자가 메모장 등에서 test.txt 라는 파일을 다시 편집하고 저장하면 그 순간 A 속성이 다시 부여됩니다. test.txt 라는 파일이 갱신되었다는 사실을 알 수 있게 해 줍니다.
아무튼 하드에서, A속성이 있는 즉 갱신된 파일만 찾으려면, dir 명령에 옵션을 붙여 주면 됩니다. attrib 명령은 파일의 속성을 보거나 수정하는 명령어인데, 특정 속성의 파일만 찾을 수 있는 기능은 없더군요.
dir /a:a
이렇게 하면 A속성이 있는, 즉 내용이 갱신된 파일만 찾아서 목록을 보여 줍니다.
dir /a:a /s /b
이 경우 /s 옵션은 하위디렉토리까지 모두 찾으라는 뜻이고, /b 는 간략히 출력하라는 뜻입니다.
다음은 도스에서 attrib 명령을 실행하고, A속성의 갱신파일만 찾는 예제 화면입니다.

■ 기존 텍스트 파일에 덧붙여 쓰기..
출처 : mwultong블로그
dir /s/b > result.txt     : 폴더의 파일 목록을 result.txt파일에 새롭게 쓴다. (기존 파일 내용 다 날라감)
dir /s/b >> result.txt   :  폴더의 파일 목록을 reslut.txt파일의 끝에 이어서 쓴다. (기존 파일 내용 살아있음)


■ 도스 명령어로 폴더채 카피하기.
출처 : mwultong블로그
"도스창(명령 프롬프트)"에서 직접 또는, 배치 파일 속에서 디렉토리를 복사하는 방법입니다.
도스의 일반적인 COPY 명령에는 디렉토리 복사 기능이 없습니다. 파일만 복사할 수 있습니다. 그 외에도, 파일 속성을 복사할 수 없는 등의 제약이 아주 많습니다.
XCOPY 라는 외부 명령어로 디렉토리를 복사할 수 있습니다.
하위 디렉토리까지 포함, 모든 파일 복사 예제
xcopy d:\z\*.* d:\x\ /e /h /k
D드라이브의 Z디렉토리의 트리 구조를, D드라이브의 X디렉토리로 전부 복사하는 예제입니다.
/e : 비어 있는 하위 디렉토리까지 복사
/h : 히든 파일과 시스템 속성의 파일까지 복사
/k : 파일 속성 복사. (이 옵션이 없으면, 읽기전용 등의 속성이 없어져 버림)
더 자세한 도움말은 xcopy /? 라고 하면 화면에 출력됩니다.

■ SD메모리 등 외장 메모리에서 변경사항만 자동 백업해주는 batch file
출처 : mwultong블로그
@echo off
xcopy D:\Y\test.zip   e:\BACKUP\ /D /H /K /Y
xcopy D:\X\test2.zip  e:\BACKUP\ /D /H /K /Y
pause

:: XCOPY 옵션 설명
:: /D 옵션은 파일의 날짜/시간을 비교하여, 원본이 갱신된 경우만 복사
:: /H 옵션은 히든파일/시스템파일이라도 복사하기
:: /K 옵션은 파일의 속성까지 복사
:: /Y 옵션은 '덮어쓸까요?'라고 묻는 것을 생략하는 것

pause 라는 명령은, 파일 백업이 다 끝났을 때, 도스창이 즉시 닫히지 않도록 일시 중지시키는 명령입니다. 이 명령이 있어야만, SD_BackUp.bat 파일을 마우스로 클릭하여 사용할 수 있습니다.
파일명이나 폴더명에 공백(스페이스)이 있다면, 큰따옴표(")로 둘러싸 주면 됩니다.

■ 탐색기에서 현재 폴더를 시작위로 하여 도스창 열기
출처 : mwultong블로그
아무 폴더에서나, 그 폴더를 "시작 위치"로 하여, 도스창(명령 프롬프트;CMD.EXE)을 쉽게 실행하는 방법입니다.
원래 도스창을 실행하면
C:\Documents and Settings\<현재 로그인한 사용자ID>
항상 이런 폴더(디렉토리)에서 시작되기에 불편합니다.
그러나 이 게시물에서 소개하는 방법을 사용하면 이제,
윈도우 탐색기 (Windows Explorer)에서, 특정 폴더를 선택하고, 마우스 우측 버튼으로 눌러 "Command Line Here (이 폴더에 명령프롬프트)" 라는 항목만 선택하면, 그 폴더에서 도스창이 시작됩니다.

컨텍스트 메뉴에서, 도스창(명령 프롬프트) 실행하는 레지스트리
메모장 등의 편집기를 이용하여, 다음의 코드 박스에 있는 내용을, "Command Line Here.reg" 라는 이름의 파일로 하드에 저장합니다.
파일명: Command Line Here.reg

Windows Registry Editor Version 5.00
[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\Folder\shell\CmdPrompt]
@="Command &Line Here"
[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\Folder\shell\CmdPrompt\command]
@="cmd.exe %L"


이제 "Command Line Here.reg" 라는 파일을 클릭하면
D:\Z\COMMAN~1.REG의 정보를 레지스트리에 추가하시겠습니까?
이런 대화상자가 나옵니다. "예"를 클릭합니다.

그런 후, 이제 윈도우 탐색기를 실행시키고, 폴더 트리에서 아무 폴더를 선택하고, 마우스 우측 버튼을 누르면
Command Line Here
라는 항목이 있을 것입니다. 그것을 선택하면 현재 폴더에서 도스창이 실행됩니다.


출처 : 안철수연구소

기타 윈도우 중요 정책 실행 명령어
윈도우에서 중요한 정책을 확인하고 변경할 수 있는 다양한 기능들이 윈도우엔 내장되어 있다. 하지만 꼭꼭 숨어 있어 이를 발견하기는 쉽지 않다. 따라서 다음 명령어를 입력해 쉽게 실행해 볼 수 있다. 실행 방법은 [시작] -> [실행] -> 해당 명령어 입력 후 [확인]버튼을 클릭하면 된다. 각각의 명령어는 다음과 같다. 하지만 잘못된 정책 변경은 정상적인 윈도우 사용을 불가능하게 할 수 있으므로 잘 모르는 항목은 수정하지 않는 것이 바람직하다.

COMPMGMT.MSC : 컴퓨터 관리로 컴퓨터의 세부 설정을 직접 변경할 수 있다. 
                                      이것만 보면 웬만한건 다 볼 수 있다. +_+)b          File 메뉴에 들어가보면 다른 모듈로 갈 수 있다.
DEVMGMT.MSC : 장치 관리자로 컴퓨터에 연결된 각종 장치들을 관리할 수 있다.
DFRG.MSC : 디스크 조각 모음으로 디스크내에 조각나서 저장된 파일을 하나의 조각으로 묶어줘
                        디스크 읽기 성능 및 수명을 개선하는데 도움을 준다.
EVENTVWR.MSC : 윈도우의 각종 이벤트 로그를 확인할 수 있다.
                                   만약 윈도우에 문제가 발생했을 경우 확인할 수 있는 단서를 제공하기도 한다.
FSMGMT.MSC : 공유된 폴더와 파일을 확인할 수 있다.
                               공유된 폴더와 파일을 한눈에 보여줘 불필요한 공유 폴더를 확인하고 공유를 해제하여 보안성을 높일 수 있다.
GPEDIT.MSC : 로컬 컴퓨터 정책으로 윈도우의 다양한 정책은 물론 보안 정책을 변경할 수 있다.
LUSRMGR.MSC : 로컬 사용자 및 그룹 정책으로 윈도우 사용자를 추가/삭제/관리할 수 있으며,
                                 그룹을 설정하고 보안 권한을 부여할 수 있다.
PERFMON.MSC : 시스템 성능을 모니터링한 결과를 볼 수 있다.
RSOP.MSC : 정책의 결과 집합으로 윈도우에 로그인된 사용자에게 적용되었거나 적용될 정책을 확인할 수 있습니다.
SECPOL.MSC : 로컬 보안 정책으로 현재 컴퓨터의 보안 정책을 확인하고 변경할 수 있다.
SERVICES.MSC : 현재 윈도우에 설치된 각종 서비스 항목과 그 상태를 확인하고 변경할 수 있다. 
                               불필요한 서비스를 중지시켜 불필요한 자원을 절약할 수 있다.@

[안철수연구소 2008-2-12]


--- 이하 퍼옴 --------------------------------------------------------------------------------------------------------------------------------

출처 : http://kin.naver.com/db/detail.php?d1id=1&dir_id=10201&eid=CaP4iuoX4iJ1q9ebGZ8njyoHARwGjIdr&qb=tbW9ur+hvK0guq+89sDHILvnv+s=

1.내부 명령어        
*내부 명령어란 컴퓨터가 부팅된후 사용자가 내린 명령어를 COMMAND.COM에 의하여 해석이 이루어 실행되는 명령어를 의미한다        
*COMMAND.COM은 컴퓨터를 부팅시키는 시스템 파일로서 부팅이 완료되면 메모리에 상주하면서 사용자로 부터 내려지는 명령을 해석하는 일을 담담하는 명령어 해석기다        
*내부명령어는 프롬프트 상태에서 명령을 입력하면 바로 실행된다        
        명령어                     기능 설명
        BRAEK                    프로그램 수행시 Ctrl + Break을 이용해 On/Off 지정이 가능
        CALL                        배치파일 수행 중에 또다른 배치 파일 수행
        CD                            작업 디렉토리 이동
        CHCP                       코드 페이지를 보여주거나 변경
        CLS                          화면을 깨끗이 한다
        COUNTRY             국가 코드 지정
        COPY                      파일 복사
        DATE                     날짜 확인 과 변경
        DEL                        파일 삭제
        DIR                        현재 디렉토리 파일의 정보 출력
        ECHO                    배치파일에서 수행 명령으로 표시 여부 지정
        EXIT                    실행중인 원래 프로그램으로 복귀
        FOR                     배치파일의 수행을 반복
        GOTO                 배치파일에서 지정한 레이블로 분기
        IF                        배치파일에서명령을 비교판단
        LH                      프로그램을 상위 메모리 영역에 읽어들임
        MD                   디렉토리 생성
        PATH              현재 디렉터리에 없는 실행 파일의 경로 지정
        PAUSE            배치파일 수행을 일시정시
        PROMPT         시스템 프롬프트 모양을 설정
        REM                 배치파일에서 주석문을 보여주고 해당 항목을 실행하지 않음
        REN                  파일 이름의 변경
        RD                    디렉터리 삭제
        SET                 환경변수를 설정하거나 해제
        SHIFT            배치 파일에서 파라미터를 하나씩 왼쪽으로 이동
        TIME             시각을 설정하거나 보여줌
        TYPE            일괄처리 파일의 내용을 보여줌
        VER             도스버전 출력
        VERIFY       디스크에 데이터 기록시 바르게 기록되는지 여부를 검사
        VOL              디스켓의 볼륨 레이블을 보여줌
2.외부 명령어        
*외부 명령어란 COMMAND.COM에 의하여 직접 해석되지 못하며 명령을 수행하는 명령어 파일이 존재하여야 한다        
*예를 들어 디스크 포맷 명령인 FORMAT A:라는 명령이 실행되기 위해서는 FORMAT.COM이라는 명령어 파일이 존재하여야 한다는 것이다        
*즉 COMMAND.COM의 내부에 포함되지 않고 별도의 명령어 파일로 존재하는 명령어를 외부 명령어라 한다        
        명령어 기능설명
        CHKDSK                 디스크의 상태를 점검
        FORMAT                디스크를 초기화
        DISKCOPY             똑같은 내용의 디스켓을 하나 더 만듬
        SCANDISK            디스크 검사 유틸리티로 디스크의 문제점을 진단하고 수정
        LABEL                  볼륨 레이블을 디스크에 지정
        RECOVER            손상된 디스크에서 읽을수 있는 정보를 복구
        DISKCOMP          디스크의 내용을 비교
        FDISK                  하드디스크의 분활
        DEFRAG             하드 디스크 최적화 유틸리티
        DBLSPACE         디스크를 압축하여 사용할수 있는 공간을 늘려줌
        XCOPY                파일의 선별 복사
        ATTRIB              파일의 속성 변경
        REPLACE          구버전 파일을 신 버전으로 복구
        FC                       문장 파일과 이진 파일을 서로 비교
        FIND                 특정 문자열을 파일에서 검색
        MORE              파일 내용을 화면 단위로 출력
        SORT                       파일의 정렬
        MEM                       시스템 메모리를 확인
        MEMMAKER      메모리 최적화 프로그램
        SMARTDRV        디스크 캐시 프로그램으로 하드 디스크의 속도 향상
        RAMDRVE          램 드라이브를 생성
        ASSIGN               드라이브 이름 변경
        JOIN                       디스크 드라이브를 가상 서브 디렉터리로 사용
        MSAV                  바이러스 검색과 치료
        VSAFE                 램상주 프로그램으로 바이러스 침투 모니터링
        BACKUP               하드디스크의 파일을 디스켓에 보관
        RESTORE                   백업 파일을 복구
profile