Linux 复制文件的特定字段并将其粘贴到另一个现有文件的另一个特定字段中-lunx命令
各位下午好,我有两个类似的文件: 文件1Linux 复制文件的特定字段并将其粘贴到另一个现有文件的另一个特定字段中-lunx命令,linux,file,copy-paste,Linux,File,Copy Paste,各位下午好,我有两个类似的文件: 文件1 45.999 60.9999 70.000 23.0090 文件2 DATAFILE pheno.txt TRAITS FIELDS_PASSED TO OUTPUT WEIGHT(S) RESIDUAL_VARIANCE EFFECT 2 cross alpha EFFECT 1 cross alpha RANDOM animal FILE pedigree.txt SNP_FILE snp_.txt (CO)VARIANCES 需要将文件1
45.999 60.9999
70.000 23.0090
文件2
DATAFILE
pheno.txt
TRAITS
FIELDS_PASSED TO OUTPUT
WEIGHT(S)
RESIDUAL_VARIANCE
EFFECT
2 cross alpha
EFFECT
1 cross alpha
RANDOM
animal
FILE
pedigree.txt
SNP_FILE
snp_.txt
(CO)VARIANCES
需要将文件1的值传递给文件2的特定位置,如下所示:
文件2
DATAFILE
pheno.txt
TRAITS
FIELDS_PASSED TO OUTPUT
WEIGHT(S)
RESIDUAL_VARIANCE
45.999
EFFECT
2 cross alpha
EFFECT
1 cross alpha
RANDOM
animal
FILE
pedigree.txt
SNP_FILE
snp_.txt
(CO)VARIANCES
23.0090
记住,我想保留文件2,只需添加文件1的值
set--$(是的,您已经完成了您的工作。我建议您也改进您的规范,以确定预期的关键情况,并指出如何处理意外错误。在您尝试编写代码并遇到特定问题后,发布一个可操作的问题,包括您的代码、小样本输入、预期的给出这些输入的输出,以及您当前收到的任何错误消息。请在发布更多Qs之前阅读常见问题解答。祝您好运。
set -- $(<file1)
sed -i "/RESIDUAL_VARIANCE/{n;c$1
};\${s/[0-9].*/$4/;t;a$4
}" file2