You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何批量将FASTA文件的GenBank完整信息重命名为仅物种名?

批量修改FASTA文件标题的实用方案

方法一:Notepad++ 批量处理

  1. 打开Notepad++,通过「文件」→「打开文件夹作为工作区」导入存放所有FASTA文件的文件夹。
  2. 按Ctrl+Shift+F打开「查找在文件」对话框:
    • 「查找目标」填入正则表达式:^>(\w+\.\d+) (\w+ \w+) .*
    • 「替换为」填入:>$2
    • 勾选「正则表达式」选项,选择「在所有打开的文件中替换」(或指定文件夹路径批量处理)
    • 点击「全部替换」即可完成批量修改。

方法二:PowerShell 命令行批量处理

打开PowerShell,切换到FASTA文件所在目录,执行以下命令(建议先备份原始文件):

Get-ChildItem -Filter "*.fasta" | ForEach-Object {
    (Get-Content $_.FullName) -replace '^>(\w+\.\d+) (\w+ \w+) .*', '>$2' | Set-Content $_.FullName -Encoding UTF8
}

该命令会遍历当前目录下所有.fasta文件,自动替换标题行并覆盖原文件。

方法三:Python 脚本批量处理

适合需要灵活调整逻辑的场景,脚本如下:

import os

# 替换为你的FASTA文件所在文件夹路径
folder_path = "你的FASTA文件夹路径"

for filename in os.listdir(folder_path):
    if filename.endswith((".fasta", ".fa")):
        file_path = os.path.join(folder_path, filename)
        with open(file_path, "r", encoding="utf-8") as f:
            lines = f.readlines()
        modified_lines = []
        for line in lines:
            if line.startswith(">"):
                parts = line.strip().split()
                if len(parts) >= 3:
                    new_title = f">{parts[1]} {parts[2]}\n"
                    modified_lines.append(new_title)
                else:
                    modified_lines.append(line)
            else:
                modified_lines.append(line)
        with open(file_path, "w", encoding="utf-8") as f:
            f.writelines(modified_lines)
print("批量修改完成")

替换folder_path为实际路径后运行脚本即可。

内容的提问来源于stack exchange,提问作者jamie-654

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.30 04:15:05