앱을 사용할 때 x분마다 .cmd 파일을 실행하시겠습니까?

앱을 사용할 때 x분마다 .cmd 파일을 실행하시겠습니까?

15분마다 폴더를 증분 백업하는 방법을 찾으려고 노력하고 있지만 마지막 백업 이후 VS Code가 사용되었거나 포커스가 있는 경우에만 가능합니다.

내가 어떻게 할 수 있는지에 대한 아이디어가 있는 사람이 있나요?

답변1

AutoHotkey에서는 상대적으로 쉽습니다... 이전에 사용해 본 적이 없다면 구문 강조 기능이 있는 SciTE4AutoHotkey를 사용하는 것이 좋습니다.

비슷한 작업을 수행하기 위한 대략적인 개요는 다음과 같습니다. 창 제목이 제대로 작동하도록 하려면 코드를 디버깅해야 합니다. 트레이 아이콘의 Window Spy 기능을 사용하여 VS Code에 대한 적절한 WinTitle을 얻고 도움말 설명을 참조하세요. WinTitle). 또한 백업을 실행하려면 run 문을 디버그해야 합니다. 백업을 직접 또는 배치 파일로 실행할 수 있으며 때로는 배치 파일을 작동시키는 것이 더 쉽습니다.

; Global variable to store last active window time
Global gLastActive 

; This will call the Backup() function periodically..
SetTimer, Backup, % 15*60*1000 ; 15 minutes, in milliseconds

; This is the main loop, just sets a global if the window is active at any point
Loop {
    If WinActive("VS Code") {           ; this will need to be a valid WinTitle
        gLastActive := A_TickCount
        ; MsgBox % "Window detected..."     ; debug message for getting WinTitle correct
    }
    
    Sleep 1000
}

ExitApp         ; Denote logical end of program, will never execute


; Backup function will run periodically and only back things up
;    if VS Code was active since last time...
Backup() {
    Static lastTick
    
    ; If the window was active after the last backup, run a backup this time
    If (gLastActive>lastTick)
        Run, C:\Target.cmd, C:\WorkingDir, Hide ; this will need to be corrected for syntax
    
    lastTick := A_TickCount
}

메모:이것은 완전히 테스트되지 않은 코드이며, 시도하고 시작할 수 있는 프레임워크 예제를 제공할 뿐입니다.

관련 정보