【发布时间】:2015-09-24 20:59:08
【问题描述】:
我有多个如下所示的文件:
文件1:
rsRNA-2312-n 2
rsRNA-6508-n 2
rsRNA-6382-n 10
rsRNA-951-n 0
rsRNA-6330-n 4
rsRNA-6330-n 11
rsRNA-1385-n 3
rsRNA-4945-n 0
rsRNA-946-n 9
文件2:
rsRNA-552-n 2
rsRNA-5301-n 7
rsRNA-6487-n 0
rsRNA-4945-n 7
rsRNA-2445-n 9
rsRNA-6490-n 2
文件3:
rsRNA-4946-n 1
rsRNA-5058-n 0
rsRNA-552-n 0
rsRNA-849-n 2
rsRNA-3302-n 2
rsRNA-4099-n 0
rsRNA-552-n 1
我想合并文件,创建一个输出,该输出在单独的列中包含每个输入文件的值,在 column1 中包含唯一标识符(输入文件中的第 1 列)。如果在特定输入文件中未找到标识符,则此特定输入的此标识符的计数应为 0。
输出类似(不是真实数据):
identifier file1 file2 file3
rsRNA-552-n 2 4 5
rsRNA-5301-n 7 12 2
rsRNA-6487-n 0 1 5
rsRNA-4945-n 7 12 1
rsRNA-2445-n 9 4 55
rsRNA-6490-n 2 1 0
正在尝试:
paste <(awk '{print $2}' file1 ) <(awk '{print $2}' file2 ) <(awk '{print $2}' file3) <(awk '{print $2}' file4)
并使用 for 循环:
for f in file*; do
base_name=${f%.txt}
id=${base_name#*_}
awk > "output${id}"
done
【问题讨论】:
-
但我有 96 个文件:/