Prof Brian Ripley wrote: > This is actually a Windows bug. Those files are unlink()ed, and it seems > Windows is not respecting that (not an unknown phenomenon). I have tried > a few workarounds, and am about to commit one that seems to work.
I guess you mean the C unlink, since I don't see the R unlink being called. Generally deletes fail on Windows when files are locked, e.g. open for reading or writing. I haven't seen Windows file deletes fail in other circumstances, so I suspect this was an R, MinGW or MSVCRT bug rather than a Windows bug. Duncan Murdoch > > No files are left over on a decent operating system, e.g. Solaris or FC3 > Linux. > > On Fri, 8 Jul 2005 [EMAIL PROTECTED] wrote: > > >>Harold, I've taken a closer look at your example and I'd call this an >>Sweave bug. It creates tempfiles each time you run it, and doesn't >>delete them at the end. For example: >> >> >>>list.files(tempdir()) >> >>character(0) >> >>>testfile <- system.file("Sweave", "Sweave-test-1.Rnw", package = "utils") >>>Sweave(testfile, out="junk.tex") >> >>Writing to file junk.tex >>Processing code chunks ... >> 1 : print term verbatim >> 2 : term hide >> 3 : echo print term verbatim >> 4 : term verbatim >> 5 : echo term verbatim >> 6 : echo term verbatim eps pdf >> 7 : echo term verbatim eps pdf >> >>You can now run LaTeX on 'junk.tex' >> >>>list.files(tempdir()) >> >> [1] "Rf10523" "Rf13872" "Rf17129" "Rf2055" "Rf2203" "Rf2403" "Rf27095" >> [8] "Rf2892" "Rf31415" "Rf5290" "Rf6251" "Rf6482" "Rf7055" "Rf724" >> >>>Sweave(testfile, out="C:/temp/junk.tex") >> >>Writing to file C:/temp/junk.tex >>Processing code chunks ... >> 1 : print term verbatim >> 2 : term hide >> 3 : echo print term verbatim >> 4 : term verbatim >> 5 : echo term verbatim >> 6 : echo term verbatim eps pdf >> 7 : echo term verbatim eps pdf >> >>You can now run LaTeX on 'C:/temp/junk.tex' >> >>>list.files(tempdir()) >> >> [1] "Rf10523" "Rf12679" "Rf1311" "Rf13484" "Rf13872" "Rf17129" "Rf17288" >> [8] "Rf2055" "Rf21774" "Rf2203" "Rf23417" "Rf2403" "Rf27095" "Rf2892" >>[15] "Rf29444" "Rf31128" "Rf31415" "Rf32520" "Rf3338" "Rf5290" "Rf5551" >>[22] "Rf6251" "Rf6482" "Rf7055" "Rf724" "Rf7543" "Rf758" "Rf7673" >> >>>unlink(list.files(tempdir(),full=T)) >>>list.files(tempdir()) >> >>character(0) >> >>Harold: a workaround for this would be to wrap your Sweave call in >>something like this: >> >>keep <- list.files(tempdir(), full=TRUE) # keep previous temp files >> >>... Call Sweave here ... >> >>temps <- list.files(tempdir(), full=TRUE) >>unlink(temps[!(temps %in% keep)]) # delete the newly created ones >> >>______________________________________________ >>R-devel@r-project.org mailing list >>https://stat.ethz.ch/mailman/listinfo/r-devel >> >> > > ______________________________________________ R-devel@r-project.org mailing list https://stat.ethz.ch/mailman/listinfo/r-devel