【发布时间】:2019-06-13 14:38:35
【问题描述】:
假设我有 20 个不同的文件。前 10 个文件以 .counts.tsv 结尾,其余文件以 .libsize.tsv 结尾。对于每个.counts.tsv,都有匹配的.libsize.tsv 文件。我想使用 for 循环来选择这两个文件并为这两种文件类型运行 R 脚本。
这是我尝试过的,
#!/bin/bash
arti='/home/path/tofiles'
for counts in ${arti}/*__counts.tsv ; do
for libsize in "$arti"/*__libsize.tsv ; do
Rscript score.R ${counts} ${libsize}
done;
done;
上面的 shell 脚本迭代文件超过 200 次,而我只有 20 个文件。我需要为这两个文件执行 10 次 Rscript。任何建议将不胜感激。
【问题讨论】:
-
你想在这个脚本结束时做什么?
-
最后,我需要在每个
counts和libsize上执行R脚本 -
"两个文件 10 次" 所以总共 20 次迭代?希望文件以相似的第一部分命名,即你有
myFile.libsize.tsv和myFile.__counts.tsv然后你只需要1个循环,从循环返回的变量中去掉扩展名并将其添加回你的@上的2个副本987654330@线,即。Rscript ${myF}.__counts.tsv ${myF}.__libsize.tsv。祝你好运。 -
Rscript 应该只运行 10 次。因此,10 次迭代。所以我想我需要在这里更清楚一点,对于每个
.count.tsv文件,都有一个匹配的.libsize.tsv,因此总共有 20 个。因此,最后 Rscript 应该只迭代 10 次 -
啊,那我们把R标签去掉吧。