我想fread在(R)脚本中使用,它将通过linux管道机制获取输入数据.以下是否有fread模拟?
read.csv(file = 'stdin', ...)
Run Code Online (Sandbox Code Playgroud)
我还会选择stdin其他方式阅读,然后使用fread它来解析它,因为我主要想要它fread的高级分隔符和标题逻辑.
我正在尝试将进程替换用于程序的输入文件,但它无法正常工作.是因为某些程序不允许输入文件的进程替换吗?
以下不起作用:
bash -c "cat meaningless_name"
>sequence1
gattacagattacagattacagattacagattacagattacagattacagattaca
>sequence2
gattacagattacagattacagattacagattacagattacagattacagattaca
bash -c "clustalw -align -infile=<(cat meaningless_name) -outfile=output_alignment.aln -newtree=output_tree.dnd"
(Less verbose output, finishing with:
No sequences in file. No alignment!
Run Code Online (Sandbox Code Playgroud)
但以下控件确实有效:
bash -c "clustalw -align -infile=meaningless_name -outfile=output_alignment.aln -newtree=output_tree.dnd"
(Verbose output, finishing with:
CLUSTAL-Alignment file created [output_alignment.aln]
bash -c "cat <(cat meaningless_name) > meaningless_name2"
diff meaningless_name meaningless_name2
(No output: the two files are the same)
bash -c "clustalw -align -infile=meaningless_name2 -outfile=output_alignment.aln -newtree=output_tree.dnd"
(Verbose output, finishing with:
CLUSTAL-Alignment file created [output_alignment.aln]
Run Code Online (Sandbox Code Playgroud)
这表明进程替换本身有效,但clustalw程序本身不喜欢进程替换 - …