최근에 다운로드 한 설치 파일 및 기타 미디어 파일과 같은 임시 파일을 삭제되기 전에 안전한 위치로 복사 할 수 있도록 유용한 코드를 작성했습니다.임시 파일을 삭제하기 전에 복사하십시오.
string dir = "c:\\Users\\neal\\appdata\\Local\\Temp";
string newdir = "D:\\";
var directory = new DirectoryInfo(dir);
var myFile = (from f in directory.GetFiles()
orderby f.LastAccessTime descending
select f).First();
var myDir = (from f in directory.GetDirectories()
orderby f.LastAccessTime descending
select f).First();
myFile.CopyTo(newdir, true);
위의 방법은 실제로 작동하지 않습니다. 왜 그런지 모르겠습니다. 모든 파일에 액세스 권한 (설치 파일)이 없을 수도 있습니다.
거기에 어떤 생각이나 다른 논리가 있습니까?
몇 가지 사항 : 첫째, 현재 myDir을 전혀 사용하지 않고 있습니다. 둘째로 .First()를 사용하고 있습니다. 이것은 디렉토리에있는 * 처음 * 파일 만 가져올 것입니다. 아마도이 파일이 복사 된 파일 중 하나 일 것입니다. 이 문제에 대한 재귀 적 접근이 더 필요합니다. –
.bat 스크립트에서 xcopy를 호출하는 방법은 어떻습니까? 이것을 복잡하게 할 필요가 없습니다. –
코드에서 특정 작업을 수행 할 필요가 없다면 Chris와 동의 할 것입니다. 당신은 robocopy를 볼 수 있습니다 - 나는 속임수를 멋지게 찾았습니다. –