본문 바로가기

JAVA

Java 특정 폴더 및 하위폴더 모두 삭제 윈도우 스케줄러 배치

Java 폴더 및 하위폴더 삭제

 

 

파일이 날짜별로 생기는 구조에서 오늘 기준 하루 또는 이틀전 폴더의 파일을 삭제

20230722

  - 01

    - file01

    - file02

  - 02

    - file01

  - 03

    - file01

20230723

 

 

day.add(Calendar.DATE, -2) 로 이틀 전 파일을 삭제

 

public static void main(String[] args) {
  Date today = new Date();
  SimpleDateFormat date = new SimpleDateFormat("yyyyMMdd");
  String toDay = date.format(today);
  
  System.out.println("today : " + toDay);
  
  Calendar day = Calendar.getInstance();
  day.add(Calendar.DATE, -2);
  String beforeDate = new SimpleDateFormat("yyyyMMdd").format(day.getTime());
  
  System.out.println("before day : " + beforeDate);
  
  String filePath = "C:\\\\Users\\\\TEST\\\\"+beforeDate;
  
  System.oput.println(filePath);
  
  File files = new File(filePath);
  
  deleteFiles(files);
}

static boolean deleteFiles(File files) {
  File[] allFiles = files.listFiles();
  
  if(allFiles != null) {
    for(File file : allFiles) {
      deleteFiles(file);
    }
  }
  
  System.out.println("Remove file : " + files.getPath());
  
  return files.delete();
}

 

 

JAR 파일 EXPORT

프로젝트 우클릭 > Export > Runnable JAR file > 파일 위치 선택 후 Finish

 

 

윈도우 배치 등록

 

윈도우 시작화면에서 작업 스케줄러 실행

작업 만들기 클릭

 

 

새 작업 만들기에서 일반탭으로 이동 후 이름, 설명 입력

 

트리거 탭 누르고 새로 만들기 버튼 클릭

작업 시작은 예약 상태로 하고 기간 설정

 

 

동작 탭 누르고 새로 만들기 버튼 클릭

프로그램/스크립트로 jar 파일 위치 지정

 

 

스케줄러에서 정상 등록되었는지 확인