我有数百个 FASTA 文件,想使用 bash 在文件名中添加第一个序列的完整标头。
例:1.法斯
>abc_files657_XXX
咔嚓...
2.FAS
>def_ID
啪....
我想要什么:
1_abc_files657_XXX.法斯
2_def_ID.法斯
我知道我可以使用:
对于 *.fas 中的文件;执行 ..
。但这就是我所知道的。谢谢!
您要将所有 .fas 文件重命名到文件的第一行?
for file in *.fas; do
[ -e "$file" ] || continue
mv -- "$file" "$(head -1 -- "$file").fas"
done
例如:
% cat 1.fas
john_doe
..
more text
% cat 2.fas
jane_baz
将成为:
john_doe.fas
jane_baz.fas