Я знаю, что это старый вопрос, но он появился первым в моем поиске Google по этому же вопросу, хотя я знал ответ, который я просто хотел, чтобы что-то копировать и вставлять. Что делает его полезным для дальнейшего ответа. Итак, вот что работает для меня:
Установите rtools , затем:
install.packages(path_to_file, repos = NULL, type="source")
У вас может быть несколько опций исключения для tar, поэтому
$ tar --exclude='./folder' --exclude='./upload/folder2' -zcvf /backup/filename.tgz .
и т. Д. Будут работать. Убедитесь, что помещает - исключить
перед исходным и целевым элементами.
Лучше всего использовать find с помощью tar через xargs (для обработки большого количества аргументов). Например:
find / -print0 | xargs -0 tar cjf tarfile.tar.bz2
Используйте команду find вместе с опцией tar append (-r). Таким образом, вы можете добавлять файлы в существующий tar за один шаг вместо двухпроходного решения (создать список файлов, создать tar).
find /dir/dir -prune ... -o etc etc.... -exec tar rvf ~/tarfile.tar {} \;
Вы можете использовать cpio (1) для создания файлов tar. cpio берет файлы в архив на стандартный ввод, поэтому, если вы уже определились с командой find, которую хотите использовать для выбора файлов в архиве, передайте ее в cpio для создания tar-файла:
find ... | cpio -o -H ustar | gzip -c > archive.tar.gz
Вы можете исключить каталоги с помощью - exclude
для tar.
Если вы хотите заархивировать все, кроме / usr
, вы можно использовать:
tar -zcvf /all.tgz / --exclude=/usr
В вашем случае, возможно, что-то вроде
tar -zcvf archive.tgz arc_dir --exclude=dir/ignore_this_dir
Я нашёл это где-то в другом месте, так что не хочу приписывать себе заслуги, но это сработало лучше, чем любое из вышеприведённых решений для моих макроспецифических выпусков (даже если это закрыто):
tar zc --exclude __MACOSX --exclude .DS_Store -f <archive> <source(s)>