小编nst*_*tam的帖子

如果模式存在于另一个文件中,如何使用 awk 替换一个文件中的字符串

我有一个数据文件A.txt(字段分隔符 = \t):

Well    Well Type   Well Name   Dye Target  
A1      Unknown     HIGH-001    FAM ViroFAM                 
A1      Unknown     HIGH-001    HEX ViroHEX
Run Code Online (Sandbox Code Playgroud)

和一个模板文件B.txt

kit
Software Version = NOVA_v1
Date And Time of Export = 07/02/2020 13:44:11 UTC
Experiment Name =
Instrument Software Version =
Instrument Type = CFX
Instrument Serial Number =
Run Start Date =
Run End Date =
Run Operator =
Batch Status = VALID
Method = Novaprime
Date And Time of Export,Batch ID,Sample Name,Well,Sample Type,Status,Interpretive …
Run Code Online (Sandbox Code Playgroud)

awk text-processing

5
推荐指数
1
解决办法
278
查看次数

当 awk 中的行不以“#”开头时打印模式

我想在我的文件中不以“#”开头的每一行的开头打印“chr”。

输入 :

##toto
#titi
16
17
Run Code Online (Sandbox Code Playgroud)

输出 :

##toto
#titi
chr16
chr17
Run Code Online (Sandbox Code Playgroud)

我试过 awk ( awk '$1 ~ /^#/ ...) 或 grep ( grep "^[^#]" ...) 但没有成功。我怎样才能做到这一点?

awk

2
推荐指数
1
解决办法
459
查看次数

如何连接多个文件中的特定列

我有一个数据文件A.tsv(字段分隔符 = \t):

id  clade   mutation
243 40A SDF
254 20B
261 40A
267 20B
Run Code Online (Sandbox Code Playgroud)

B.tsv(字段分隔符 = \t):

id  clade   mutation
243 40A
254 20B
261 40A
267 20B SLT
Run Code Online (Sandbox Code Playgroud)

C.tsv(字段分隔符 = \t):

id  clade   mutation
243 40A
254 20B
261 40A MGG
267 20B
Run Code Online (Sandbox Code Playgroud)

我想将所有文件连接成一个,知道所有文件之间唯一不同的列是 column mutation。预期的结果是:

id  clade   mutation
243 40A SDF
254 20B
261 40A MGG
267 20B SLT
Run Code Online (Sandbox Code Playgroud)

到目前为止,我尝试过:

awk 'BEGIN{FS=OFS="\t"} NR==FNR{klos[NR]=$3; next} $3==""{$3=klos[FNR]} 1' *.tsv > output.tsv …
Run Code Online (Sandbox Code Playgroud)

awk text-processing

1
推荐指数
1
解决办法
176
查看次数

标签 统计

awk ×3

text-processing ×2