Копирование файлов при сохранении исходной информации о файле (время создания и т. д.)
чтобы облегчить ручное копирование больших объемов файлов, я часто использую FreeFileSync. Я заметил, что он сохраняет исходную информацию о файле, например, когда файл был создан, последний раз изменен и т. д.
теперь мне нужно регулярно копировать тонны файлов в пакетном режиме, и я хотел бы сделать это в R. поэтому я задался вопросом, способен ли R сохранить эту информацию. AFAIU, file.rename()
и file.copy()
изменить информацию о файле, например, время устанавливается на время файлов были фактически скопированы.
есть ли способ восстановить исходную информацию о файле после копирования файлов?
1 ответов
Robocopy через system2()
можно сохранить метки времени.
> cmdArgs<- paste( normalizePath( file.path(getwd()), winslash="/"),
normalizePath( file.path(getwd(), "bkup"), winslash="/" ),
"*.txt",
"/copy:DAT /V" )
> system2( "robocopy.exe", args=cmdArgs )
Robocopy имеет множество переключателей для всех типов вариантов использования и может принимать файл "задания" для параметров и имен файлов. Возможность вызова R с помощью system также может быть использована для выполнения сеанса с повышенными правами (возможно, проще всего было бы использовать сценарий powershell для вызова Robocopy), чтобы вся информация аудита (разрешения и т. д.) Также могла быть сохранена.