-
cmd - 날짜 관련 및 일정 기간 지난 파일 삭제 명령어etc 2020. 2. 5. 13:55반응형
%date% → 2020-02-04
%date:~2% → 20-02-04
%date:-=% → 20200204
erp%date:-=%.dump
명령으로 erp20200204.dump 생성하기
forfiles /p "d:\backup" /s /m *.dump /d -30 /c "cmd /c del @file"
해당 경로에 한달 전에 생성된 dump 파일 삭제 명령어.Forfiles
Selects files in a folder or tree for batch processing.
Syntax
forfiles [/p Path] [/m SearchMask] [/s] [/c Command] [/d[{+ | -}] [{MM**/DD/**YYYY | DD}]]
Parameters
- /p Path
Specifies the Path on which you want to start searching. The default folder is the current working directory, which you specify by typing a period (.).
- /m SearchMask
Searches files according to SearchMask. The default SearchMask is *.*.
- /s
Instructs forfiles to search in subdirectories.
- /c Command
Runs the specified Command on each file. You must wrap command strings with spaces in quotation marks. The default Command is "cmd /c echo @file".
- /d[{+** | -}] [{MM/DD/YYYY | DD}]**
Selects files with a date greater than or equal to (+) or less than or equal to (-) the specified date, where MM**/DD/**YYYY is the specified date and DD is the current date minus DD days. If you do not specify + or -, + is used. The valid range for DD is 0 - 32768.
- /?
Displays help at the command prompt.
디스크에 쌓인 로그 파일을 주기적으로 정리하려는 과정에, 일정기간이 경과한 로그를 삭제하는 방법을 찾았습니다.
DEL 명령어로는 날짜 인수를 넣을 수 없었는데, Forfiles 명령어에서는 가능하네요.
( Windows 2003, 7, 2008 에서(또는 그 이상 버전) 가능합니다. 이하 버젼에서는 추가로 다운로드해야함. )
아래의 예문은 Log 디렉토리에 15일이 경과한 .log 확장자의 파일을 모두 삭제하는 명령어입니다.forfiles /p D:\Mail\SMTP25\Log /M *.log /D -15 /C "CMD /C del @file"
좀 더 자세한 내용은 아래의 테크넷 정보를 참고하세요.http://technet.microsoft.com/ko-kr/library/cc755872(WS.10).aspx
Forfiles
폴더나 트리에서 일괄 처리할 파일을 선택합니다.
구문
forfiles [/pPath] [/mSearchMask] [/s] [/cCommand] [/d[{+ | -}] [{MM/DD/YYYY | DD}]]
매개 변수
/pPath검색을 시작할 Path를 지정합니다. 기본 폴더는 현재의 작업 디렉터리이며 마침표(.)를 입력하여 지정합니다./mSearchMaskSearchMask에 따라 파일을 검색합니다. 기본 SearchMask는 *.*입니다./sforfiles가 하위 디렉터리에서 검색하도록 지정합니다./cCommand각 파일에 대해 지정된 Command를 실행합니다. 공백이 있는 명령 문자열은 따옴표로 묶어야 합니다. 기본 Command는 "cmd /c echo @file"입니다./d[{+ | -}] [{MM/DD/YYYY | DD}]지정된 날짜나 이후(+) 날짜 또는 이전(-) 날짜의 파일을 선택합니다. 여기서 MM/DD/YYYY는 지정된 날짜이고 DD는 현재 날짜에서 DD일을 뺀 날짜입니다. + 또는 -를 지정하지 않으면 +가 사용됩니다. DD의 유효 범위는 0 - 32768입니다./?명령 프롬프트에 도움말을 표시합니다.
설명
- Forfiles는 배치 파일에서 가장 일반적으로 사용되는 명령입니다.
- Forfiles는 dir /s와 유사합니다.
- 다음 표는 /cCommand 명령 문자열에서 사용할 수 있는 변수 목록을 보여 줍니다.
변수설명file
파일 이름
@fname
확장명을 제외한 파일 이름
@ext
파일 확장명
@path
파일의 전체 경로
@relpath
파일의 상대 경로
@isdir
파일 형식이 디렉터리이면 TRUE이고 그렇지 않으면 FALSE입니다.
@fsize
파일 크기(바이트)
@fdate
마지막으로 수정한 파일의 날짜 스탬프
@ftime
마지막으로 수정한 파일의 시간 스탬프
- Forfiles를 사용하면 여러 파일에 대해 명령을 실행하거나 여러 파일로 인수를 전달할 수 있습니다. 예를 들어 트리에서 확장명이 *.txt인 모든 파일에 대해 TYPE 명령을 실행할 수 있습니다. 또는 "Myinput.txt" 파일을 첫 번째 인수로 사용하여 C:\ 드라이브의 모든 배치 파일(*.bat)을 실행할 수 있습니다.
- Forfiles를 사용하여 다음 작업 중 하나를 수행할 수 있습니다.
- /d를 사용하여 절대 또는 상대 날짜별로 파일을 선택합니다.
- @fsize(파일 크기)와 @fdate(파일 날짜) 같은 변수를 사용하여 파일의 보관 트리를 작성합니다.
- @isdir 변수를 사용하여 파일을 디렉터리와 구분합니다.
- 명령줄에 특수 문자를 포함시키고 16진수 코드 0xHH로 문자를 묶어 출력 형식을 지정합니다.
- Forfiles는 파일 하나만 처리하도록 디자인된 도구에 대해 recurse subdirectories 플래그를 구현하여 작동합니다.
예
C: 드라이브에 있는 모든 배치 파일의 목록을 표시하려면 다음과 같이 입력합니다.
forfiles /p c:\ /s /m*.bat /c"cmd /c echo @file is a batch file"
C: 드라이브에 있는 모든 디렉터리의 목록을 표시하려면 다음과 같이 입력합니다.
forfiles /p c:\ /s /m*.* /c"cmd /c if @isdir==true echo @file is a directory"
C: 드라이브에 있는 100일 이상된 모든 파일의 목록을 표시하려면 다음과 같이 입력합니다.
forfiles /p c:\ /s /m*.* /dt-100 /c"cmd /c echo @file : date >= 100 days"
C: 드라이브에 있는 1993년 1월 1일 이전의 모든 파일을 나열하고 해당 파일에 대해 "file is quite old!"를 표시하려면 다음과 같이 입력합니다.
forfiles /p c:\ /s /m*.* /dt-01011993 /c"cmd /c echo @file is quite old!"
C: 드라이브에 있는 모든 파일의 확장명을 열 형식으로 나열하려면 다음과 같이 입력합니다.
forfiles /p c:\ /s /m*.* /c "cmd /c echo extension of @file is 0x09@ext0x09" With:
C: 드라이브에 있는 모든 배치 파일의 목록을 표시하려면 다음과 같이 입력합니다.
forfiles /p c:\ /s /m *.bat /c "cmd /c echo @file is a batch file"
C: 드라이브에 있는 모든 디렉터리의 목록을 표시하려면 다음과 같이 입력합니다.
forfiles /p c:\ /s /m *.* /c "cmd /c if @isdir==true echo @file is a directory"
반응형'etc' 카테고리의 다른 글
Batch로 네트워크 경로의 파일 백업 받기 (0) 2020.03.24 Printer Spooler Service - Error : 1068 (0) 2020.02.25 Windows - Task Scheduler 서비스 시작 안될 때 (0) 2020.02.04 Adobe Photoshop CS 6 - 영문 한글로 변환 (0) 2020.01.13 Internet Explorer 호환성 보기 설정시 발생하는 문제점 (0) 2019.12.13 댓글
- /p Path