我有文件 A.txt,它是唯一 ID(第 1 列)及其相应值(第 2 列)的列表:
A.txt
ABC1D_T1_B1 123.4
ABC2D_T1_B2 146.7
ABC3D_T1_B1 567.8
ABC4D_T0_B2 96.8
ABC1D_T0_B1 145.9
Run Code Online (Sandbox Code Playgroud)
第二个文件是 B.txt,不是唯一的,但有重复的条目
ABC1D_T1_B1
ABC1D_T1_B1
ABC2D_T1_B2
ABC3D_T1_B1
ABC3D_T1_B1
ABC4D_T0_B2
ABC1D_T0_B1
ABC1D_T0_B1
Run Code Online (Sandbox Code Playgroud)
如何从 A.txt grep B.txt 并报告重复列表的 col 2 的值
结果:
ABC1D_T1_B1 123.4
ABC1D_T1_B1 123.4
ABC2D_T1_B2 146.7
ABC3D_T1_B1 567.8
ABC3D_T1_B1 567.8
ABC4D_T0_B2 96.8
ABC1D_T0_B1 145.9
ABC1D_T0_B1 145.9
ABC1D_T0_B1 145.9
Run Code Online (Sandbox Code Playgroud)
通常,如果 B.txt 中存在唯一条目,则
grep -Fw -f B.txt A.txt >Result.txt
Run Code Online (Sandbox Code Playgroud)
如何使用 grep 为多个重复条目执行此操作?
I have few files like A.txt
, B.txt
and C.txt
, each having a only single number in it i.e A.txt
has 45
, B.txt
has 35
and C.txt
has 100
. How could I read these entries from each files and report with its corresponding file name.
output:
45 A.txt
35 B.txt
100 C.txt
Run Code Online (Sandbox Code Playgroud) 两列 A 和 B:A 列具有重复的 id,B 列对于每个对应的重复值具有不同的值。我想读取 A 列中的每个 uniq 值,仅读取 B 列中的第一个命中
文件_B.txt
1 A2 乙 3 乙 2 乙 4 1 C 5 4 3 2
输出:
1 乙 3 1 4 2
我有一个这样的文件,用制表符分隔两列:
ENSG00000242268.2 0.07563
ENSG00000270112.3 0.09976
ENSG00000167578.15 4.38608
ENSG00000273842.1 0.0
ENSG00000078237.5 4.08856
Run Code Online (Sandbox Code Playgroud)
我想从第一列的末尾删除数字扩展名,因此输出将是:
ENSG00000242268 0.07563
ENSG00000270112 0.09976
ENSG00000167578 4.38608
ENSG00000273842 0.0
ENSG00000078237 4.08856
Run Code Online (Sandbox Code Playgroud)
简单地做sed 's/\..*$//'
只返回第一列值,并使用与AWK字段分隔符'.'
,awk -F'.'
去除从第二列中的值也作为有十进制数。
这里已经回答了一个类似的问题: removing extensions in a column
我仍然无法仅从第 1 列中删除。