
파일을 변경할 때마다 업데이트된 버전이 존재하도록 다른 폴더로 이동하여 수동으로 복사해야 합니다. 에 대해 알고 있지만 mklink
제 경우에는 가능하지 않습니다.
save
Windows에서 파일의 이벤트 에 bat 파일을 연결하는 방법이 있습니까 ? 가능하다면 bat 파일을 만들어 자동으로 파일을 복사할 수 있기 때문입니다. 그렇지 않은 경우 mklink
.
답변1
파워셸에서 이 작업을 수행할 수 있습니다.
우선 여기에서 FileSystemWatcher를 가져옵니다.https://gallery.technet.microsoft.com/scriptcenter/Powershell-FileSystemWatche-dfd7084b
그 모든 것이 필요하지는 않습니다. 나는 그것을 다음과 같이 정리했습니다. 그러면 당신에게 도움이 될 것입니다:
$destination = "\\Location\file\should\go"
$folder = 'c:\scripts\test' # Enter the root path you want to monitor.
$filter = '*.*' # Enter filename here.
$fsw = New-Object IO.FileSystemWatcher $folder, $filter -Property @{IncludeSubdirectories = $false;NotifyFilter = [IO.NotifyFilters]'FileName, LastWrite'}
Register-ObjectEvent $fsw Changed -SourceIdentifier FileChanged -Action
{
$name = $Event.SourceEventArgs.Name
Copy-Item $name $destination -force
}
이는 파일의 변경 사항을 감지한 경우에만 트리거되어야 합니다.
나는 이것을 테스트하지 않았지만 당신이 갈 수 있을 만큼 충분히 가까워야 합니다.
컴퓨터를 시작할 때마다 이 powershell 비트를 실행해야 하며, 시작 항목이나 실행을 위한 예약된 작업이 필요합니다.
답변2
나는 사용하는 것이 좋습니다FreeFileSync해당 파일을 동기화된 상태로 유지합니다. FreeFileSync에는 특정 폴더에서 변경 사항이 감지될 때마다 동기화 작업을 트리거하는 RealtimeSync라는 보조 도구가 있습니다. 해당 파일에 대한 동기화 작업을 만든 다음 해당 작업으로 RealtimeSync를 실행하기만 하면 수정될 때마다 '자동으로' 복사됩니다.
전체 튜토리얼을 보려면 다음을 참조하세요.Windows에서 FreeFileSync를 사용하여 파일 및 폴더를 동기화하는 방법
중요 각주: FreeFileSync는 오픈 소스이고 GPL에 따라 라이선스가 부여되지만 OpenCandy PUP/PUA와 함께 번들로 제공되므로 네트워크 연결을 비활성화한 상태로 설치하거나 크랩웨어 설치 제안을 선택 취소했는지 확인하세요. 또한 7zip이나 PeaZip을 사용하여 설치 프로그램의 압축을 풀고 설치 없이 바로 실행할 수도 있습니다.