java基因序列个数_在多个FASTA文件中查找和替换多个序列 Headers

这是我的问题(使用Mac OS X):

我有大约35个FASTA文件,每个文件有30个序列 . 每个FASTA文件代表一个基因,它们都包含相同的个体,每个文件中具有相同的序列 Headers . Headers 格式为“#### _ G_species”,数字为非顺序 . 我需要遍历每个文件并更改4个特定标头,同时还将输出保持为35个离散文件,其名称与相应的输入文件相同,最好将输出存放到单独的子目录中 .

例如:每个文件都包含一个“6934_Sergia_sp”,我需要将所有35个文件中该名称的每个实例更改为“6934_R_robusta” . 我需要对“8324_Sergestes_sp”执行相同的操作,将每个文件中的每个实例更改为“8324_P_vigilax” . 用不同的接头冲洗并重复2次 . 更改 Headers 后,我需要有35个离散输出文件,其名称与相应的输入文件相同 .

使用以下脚本:

find /home/user/directory -name \*.c -exec sed -i "s/cybernetnews/cybernet/g" {} \;

根据我的需要更改信息,我得到一个这样的脚本:

find Path/to/my/directory -name \*.fas -exec sed -i 's/6934_Sergia_sp/6934_R_robusta/g' {} \;

我发现在-i给出之后我应该添加'.fas':

find Path/to/my/directory -name \*.fas -exec sed -i '.fas' 's/6934_Sergia_sp/6934_R_robusta/g' {} \;

因为在Mac上你需要为输出文件指定一个扩展名 . 运行这样的脚本,我得到的几乎是我正在寻找的每个输入文件被复制,每个正确的 Headers 正确替换新名称,输出放在同一目录中 . 但是,这一次只能替换一个标头,输出文件的扩展名为.fas.fas .

继续前进,我将不得不重命名输出文件以删除扩展中的第二个“.fas”,并重写并重新运行脚本3次,以便按照我想要的方式更改所有内容,这不会是结束世界,但绝对不会是理想的 .

是否可以设置脚本以便我可以同时运行所有4个替换,同时还将输出导出到新的子目录?

要将一个多序列fasta文件合并一个以">"开头的序列,可以按照以下步骤进行操作: 1. 首先,找到fasta文件以">"开头的目标序列的标题行和序列行。这可以通过查找文件以">"开头的行来实现。 2. 将目标序列的标题行和序列行提取出来,并保存为一个新的fasta文件。 3. 如果需要合并多个fasta文件的目标序列,可以重复上述步骤,将每个fasta文件的目标序列提取出来,并添加到同一个新的fasta文件。 请注意,合并fasta文件时,需要确保每个序列的标题行以">"开头,并且序列行没有换行符。另外,合并后的fasta文件应该符合fasta格式的规范。 希望这个回答对您有帮助!\[1\]\[2\] #### 引用[.reference_title] - *1* *2* [一命令实现fasta序列多行变单行](https://blog.csdn.net/weixin_44022515/article/details/104257520)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^control_2,239^v3^insert_chatgpt"}} ] [.reference_item] - *3* [C#,生信软件实践(03)——DNA数据库GenBank格式详解及转为FASTA序列格式的源代码](https://blog.csdn.net/beijinghorn/article/details/130487663)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^control_2,239^v3^insert_chatgpt"}} ] [.reference_item] [ .reference_list ]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值