我是命令行用法的新手,并且认为其他地方都没有问过这个问题。我正在尝试使Rscript能够从Shell脚本中的命令行运行。基本上,我使用了immanantation框架中的一些工具来读取和注释一些抗体NGS数据,然后将序列分为其克隆家族。要设置相似度阈值,创建者建议使用其shazam
包中的函数来设置适当的阈值。
我已经制作了以下简单的脚本来读取和验证参数:
#!/usr/bin/env Rscript
params <- commandArgs(trailingOnly=TRUE)
### read and validate mode argument
mode <- params[1]
modeAllowed <- c("ham","aa","hh_s1f","hh_s5f")
if(!(mode %in% modeAllowed)){
stop(paste("illegal mode argument supplied. acceptable values are",
paste(paste(modeAllowed, collapse = ", "), ".", sep = ""), "\nmode should be supplied first",
sep = " "))
}
### execute function
cat(threshold)
该脚本有效,但是由于每个参数只有有限数量的选项。我想知道是否有一种方法可以从终端传递--mode aa
这样的参数?我在网上看到的所有信息似乎都在使用像我的mode <- params[1]
这样的代码,我想只有在模式参数为第一个时才起作用?