티스토리 뷰

▶ PC

윈도우 기본 명령어 - forfiles

케로로몽 2023. 2. 20. 18:02
728x90
더보기

 

forfiles

파일 또는 파일 집합에서 명령을 선택하고 실행합니다. 이 명령은 일괄 처리 파일에서 가장 일반적으로 사용됩니다.

 

기본 구문

 ㅇ 구문 

forfiles [/P pathname] [/M searchmask] [/S] [/C command] [/D [+ | -] [{<date> | <days>}]]

 

ㅇ 매개 변수

매개 변수 설명
/P <pathname> 검색을 시작 하는 경로 지정 합니다. 기본적으로 현재 작업 디렉터리에서 시작 검색 합니다.
/M <searchmask> 지정 된 검색 마스크에 따라 파일을 검색합니다. 기본 검색 마스크는 입니다 *.
/S 하위 디렉터리에서 재귀적으로 검색하도록 forfiles 명령을 지시합니다.
/C <command> 각 파일에 지정된 된 명령을 실행합니다. 명령 문자열은 큰따옴표로 묶어야 합니다. 기본 명령은 입니다 "cmd /c echo @file".
/D [{+\|-}][{<date> | <days>}] 지정된 시간 프레임 내에서 마지막으로 수정된 날짜가 있는 파일을 선택합니다.
  • 마지막으로 수정한 날짜가 지정된 날짜보다 같거나 같+거나 같거나 같은- 파일을 선택합니다. 여기서 날짜  MM/DD/YYYY 형식입니다.
  • 마지막으로 수정한 날짜가 현재+ 날짜보다 같거나 같은 파일을 선택하고 지정한 일 수를 더하거나 () 현재 날짜보다 같거나 같-아서 지정한 일 수를 뺀 값을 선택합니다.
  • 의 유효한 값에는 0~32,768 범위의 숫자가 포함되며, 기호가 없으면 지정 된 경우 + 기본적으로 사용 됩니다.
/? cmd 창에 도움말 텍스트를 표시합니다.

1. 설명

- forfiles /S 명령은 과 유사합니다dir /S.

- /C 명령줄 옵션에 지정된 대로 명령 문자열에서 다음 변수를 사용할 수 있습니다.

변수 설명
@FILE 파일 이름.
@FNAME 확장명 없이 파일 이름입니다.
@EXT 파일 이름 확장명입니다.
@PATH 파일의 전체 경로입니다.
@RELPATH 파일의 상대 경로입니다.
@ISDIR 파일 형식을 디렉터리 이면 TRUE로 평가 합니다. 그렇지 않은 경우이 변수를 FALSE로 평가합니다.
@FSIZE 파일 크기 (바이트)에서입니다.
@FDATE 파일에 마지막으로 수정한 날짜 스탬프입니다.
@FTIME 파일의 마지막 수정된 타임 스탬프입니다.
  • forfiles 명령을 사용하면 명령을 실행하거나 인수를 여러 파일에 전달할 수 있습니다. 예를 들어, 실행할 수는 형식 .txt 파일 이름 확장명을 사용 하 여 트리의 모든 파일에서 명령입니다. 또는 C 드라이브에서 파일 이름이 첫 번째 인수로 Myinput.txt 모든 일괄 처리 파일(*.bat)을 실행할 수 있습니다.
  • 이 명령은 다음을 수행할 수 있습니다.
    • 파일을 사용 하 여 절대 날짜 또는 상대 날짜 선택은 /d 매개 변수입니다.
    • 및 @FDATE와 같은 @FSIZE 변수를 사용하여 파일의 보관 트리를 빌드합니다.
    • 변수를 사용하여 디렉터리에서 파일을 구분합니다 @ISDIR .
    • 문자, 0 x에 대 한 16 진수 코드를 사용 하 여 명령줄에 특수 문자를 포함HH 형식 (예: 탭에는 0x09).
  • 이 명령은 단일 파일만 처리하도록 설계된 도구에서 플래그를 구현 recurse subdirectories 하여 작동합니다.

2. 예제

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"

 

현재 디렉터리에 있는 파일을 적어도 1 년 전의 모든를 나열 하려면 다음을 입력 합니다.

forfiles /S /M *.* /D -365 /C "cmd /c echo @file is at least one year old."

 

텍스트 파일이 2007년 1월 1일보다 오래된 현재 디렉터리의 각 파일에 대해 오래된 것으로 표시하려면 다음을 입력합니다.

forfiles /S /M *.* /D -01/01/2007 /C "cmd /c echo @file is outdated."

 

열 형식으로 현재 디렉터리에 있는 모든 파일의 파일 이름 확장명을 나열 하 고 확장명 앞에 탭 추가 하려면 다음을 입력 합니다.

forfiles /S /M *.* /C "cmd /c echo The extension of @file is 0x09@ext"

 

728x90
댓글
250x250