我是 linux 命令的新手。
我正在尝试管理大型数据文件,我向您展示了其中的一行,如下所示。
6 129781361 TAR20 DB;DP=95;FS=0.321;GC=39.60;MQ=60.00;SOMATIC;VT=SNP
我要提取的是“FS及其值”这几个字。
所以,我想在 FS 字段中包含一个值 0.321。
当然,我可以使用 R 语言和其他编程语言提取这些值。
但是,这是一项非常费力的工作,因为我现在正在使用 linux 命令。
因此,我想学习如何提取 FS 文件及其值。
你能告诉我如何高效地从 FS 文件中提取 0.321 吗?
谢谢!
最佳答案
你可以使用awk
:
awk -F '[ ;,]+' '{print $6}' file
FS=0.321
只获取值部分:
awk -F '[ ;,]+' 'split($6, a, "="){print a[2]}' file
0.321
或者使用 grep -oP
(gnu-grep):
grep -oP 'FS=\K[\d.]+' file
0.321
关于linux - 如何解析我想在 shell 命令中提取的单词?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34716044/