У меня есть эта функция в RStudio для синхронизации 2 папок в Windows.
p1 и p2 - пути;
fsync<-function(p1,p2){
A<-dir(p1,all.files = T,recursive = T,ignore.case = T, include.dirs = F,full.names = T);
B<-dir(p2,all.files = T,recursive = T,ignore.case = T, include.dirs = F,full.names = T);
d1<-setdiff(A,B);
d2<-setdiff(B,A);
if(length(d1)!=0) file.copy(d1,p2,overwrite = F,recursive = T)
if(length(d2)!=0) file.copy(d2,p1,overwrite = F,recursive = T)
}
КогдаЯ запускаю его, он работает, но также показывает предупреждения о том, что «файл не существует» или «такого файла или каталога нет» (сейчас я не совсем уверен).Я думаю, что это только с файлами, содержащими неанглийские символы (e.g. á, é, ...).
Как я могу заставить dir()
правильно принимать имена файлов?