-1

我有大约 30 个 VCF 文件,文件名为ID_001.new.vcf. 我只想从文件名中提取“ID_001”部分,并在给出“Sample1”的 VCF 文件的标题行中更改它:

#CHROM POS ID REF ALT QUAL FILTER INFO FORMAT Sample1

所以结果看起来像:

#CHROM  POS     ID      REF     ALT     QUAL    FILTER  INFO    FORMAT  ID_001

我该怎么做?

我曾尝试echo在 bash 中使用并从文件名中提取 ID,但我无法对其进行迭代以在文件内进行更改。

谢谢你的帮助。

4

1 回答 1

0

您可以使用以下内容:

for file in *.vcf 
do 
   name=$(basename -- "$file" .new.vcf) 
   sed -i "s/Sample1/$name/g" "$file" 
done
于 2019-02-27T07:51:06.593 回答