下载包zip / tar.gz文件而不安装

时间:2018-01-04 08:35:56

标签: r package

我正在寻找一个函数,可以在不安装的情况下下载r包zip / tar.gz文件(给定其名称)。

基本上install.packages(),但我想将zip文件保存在给定目录中。

我没有找到一种方法来自己建立URL给定包名称,但似乎有一个,因为install.packages()以这种方式工作。

1 个答案:

答案 0 :(得分:11)

使用download.packages

download.packages(pkgs = "ggplot2", destdir = "/path/to/my/libs")

或者我们可以使用available.packages手动获取网址:

myPackage <- "ggplot2"
p <- available.packages()

myPackageUrl <- paste0(
  p[ rownames(p) == myPackage, "Repository"], "/",
  myPackage, "_",
  p[ rownames(p) == myPackage, "Version"], ".tar.gz")

myPackageUrl
# [1] "https://cran.rstudio.com/src/contrib/ggplot2_2.2.1.tar.gz"

# then download
download.file(url = myPackageUrl,
              destfile = paste0("/path/to/my/libs", "/",
              basename(myPackageUrl)))