所以我有这个程序 samtools 我想从 cmd 行使用,将一个文件转换为另一个文件。它是这样工作的:
bash-4.2$ samtools view filename.bam | awk '{OFS="\t"; print ">"$1"\n"$10}' - > filename.fasta
因为我想自动化这个,我想通过使用 R 脚本来自动化它。我知道您可以使用 system() 来运行操作系统命令,但我无法通过尝试使其工作
system(samtools view filename.bam | awk '{OFS="\t"; print ">"$1"\n"$10}' - > filename.fasta)
是否只是使用正则表达式来消除空格和东西,以便命令参数系统(命令)是可读的?我该怎么做呢?
编辑:
system("samtools view filename.bam | awk '{OFS="\t"; print ">"$1"\n"$10}' -> first_batch_1.fasta") 错误:“system("samtools view filename) 中出现意外输入.bam | awk '{OFS="\"
编辑2:
system("samtools 查看文件名.bam | awk '{OFS=\"\t\"; print \">\"$1\"\n\"$10}' -> filename.fasta")
awk: cmd. line:1: {OFS=" "; print ">"$1"
awk: cmd. line:1: ^ unterminated string
awk: cmd. line:1: {OFS=" "; print ">"$1"
awk: cmd. line:1: ^ syntax error
>
EDIT3:获胜者是:
system("samtools view filename.bam | awk '{OFS=\"\\t\"; print \">\"$1\"\\n\"$10}' -> filename.fasta")