A.11 命令行参数
commandArgs
从终端命令行中传递参数
- rdoc 高亮 R 帮助文档中的 R 函数、关键字
NULL
。启用需要在R控制台中执行rdoc::use_rdoc()
- radian 代码自动补全和语法高亮,进入 R 控制台,终端中输入
radian
- docopt 提供R命令行工具,如 littler 包,getopt 从终端命令行接受参数
- optparse 命令行选项参数的解析器
安装完 R-littler R-littler-examples (centos) 或 littler r-cran-littler (ubuntu) 后,执行
# centos
sudo ln -s /usr/lib64/R/library/littler/examples/install.r /usr/bin/install.r
sudo ln -s /usr/lib64/R/library/littler/examples/install2.r /usr/bin/install2.r
sudo ln -s /usr/lib64/R/library/littler/examples/installGithub.r /usr/bin/installGithub.r
sudo ln -s /usr/lib64/R/library/littler/examples/testInstalled.r /usr/bin/testInstalled.r
# ubuntu
sudo ln -s /usr/lib/R/site-library/littler/examples/install.r /usr/bin/install.r
sudo ln -s /usr/lib/R/site-library/littler/examples/install2.r /usr/bin/install2.r
sudo ln -s /usr/lib/R/site-library/littler/examples/installGithub.r /usr/bin/installGithub.r
sudo ln -s /usr/lib/R/site-library/littler/examples/testInstalled.r /usr/bin/testInstalled.r
这样可以载终端中安装 R 包了
install.r docopt
#!/usr/bin/env Rscript
# 安装 optparse 提供更加灵活的传参方式
# 也可参考 littler https://github.com/eddelbuettel/littler
# if("optparse" %in% .packages(TRUE)) install.packages('optparse',repos = "https://cran.rstudio.com")
# https://cran.r-project.org/doc/manuals/R-intro.html#Invoking-R-from-the-command-line
# http://www.cureffi.org/2014/01/15/running-r-batch-mode-linux/
args = commandArgs(trailingOnly=TRUE)
# 函数功能:在浏览器中同时打开多个 PDF 文档
open_pdf <- function(pdf_path = "./figures/", n = 1) {
# pdf_path: PDF文件所在目录
# n: 默认打开1个PDF文档
# PDF文档目录
pdfs <- list.files(pdf_path, pattern = '\\.pdf$')
# PDF 文档路径
path_to_pdfs <- paste(pdf_path, pdfs, sep = .Platform$file.sep)
# 打开 PDF 文档
invisible(lapply(head(path_to_pdfs, n), browseURL))
}
open_pdf(pdf_path, n = args[1])
# 使用: Rscript --vanilla code/batch-open-pdf.R 20