运行shell脚本闪亮

时间:2018-01-17 10:09:42

标签: r shell shiny

我认为我的闪亮脚本中存在一个问题,执行一个shell命令,我想知道是否有办法在闪亮的内部执行此命令。

除了闪亮的代码功能之外。

#Function to calculate maxentscore
calculate_maxent <- function(seq_vector,maxent_type){

  #Save working directory from before
  Current_wkdir <- getwd()

  #First, change working directory, to perl script location
  setwd("S:/Arbeitsgruppen VIRO/AG_Sch/Johannes Ptok_JoPt/Rpackages/rnaSEQ/data/maxent")

  #Create new text file with the sequences saved
  cat(seq_vector,file="Input_sequences",sep="\n",append=TRUE)

  #Execute the respective Perl script with the respective Sequence file
  if(maxent_type == 3) cmd <- paste("score3.pl", "Input_sequences")
  if(maxent_type == 5) cmd <- paste("score5.pl", "Input_sequences")

  #Save the calculated Maxent score file
  x <- shell(cmd,intern=TRUE)

  #Reset the working directory
  setwd(Current_wkdir)

  #Substracting the Scores from the Maxent Score Table
  x <- substr(x,(regexpr("\t",x)[[1]]+1),nchar(x))

  #Returning the maxent table
  return(x)

}

所以基本上我只是尝试执行以下代码:

shell("score5.pl Input_sequences")

在闪亮的

中似乎不可能这样

1 个答案:

答案 0 :(得分:0)

我不知道shell命令,但可以通过system()执行shell命令。它甚至使用R。

设置的当前工作目录

所以你可以试试:

x <- system(cmd, intern=True)