获取目录中所有 .Rmd 文件中加载的所有包的列表

Get a list of all packages loaded in all .Rmd files in a directory

假设我在 ~/directory1/ 中有 2 个(或任意数量的).Rmd 文件。在每个文件中,我使用 library(packagename) 加载了几个 R 包。我怎样才能得到一个包含所有这些文件中加载的所有唯一包的名称的字符向量?

#setwd(~/directory1/)
libs = lapply(list.files(pattern = "\.Rmd$"),
              function(x){
                  d = readLines(x)
                  d = d[grepl("library\(.*\)", d)]
                  gsub("library\((.*)\)", "\1", d)
              })
unique(unlist(libs))