24小时热门版块排行榜    

查看: 1062  |  回复: 4

shuifeng1988

金虫 (小有名气)

木虫

[求助] ubuntu10.10 中脚本求助

我在桌面上有一个in文件夹和一个out文件夹,in文件夹中有十个不同的文件,如a.fas, b.fas, c.fas ......., 每个文件内容如下所示(每个文件有多条序列,每条序列名都在>号后面,序列名要保留和原来一样)!我想将每条序列的最后面20个碱基除去,然后用相同的文件名字保存在out文件夹中,我应该如何写脚本!


>Myotis ricketti
ATGGATCATGCTGAAGAAACTGAAATCCTTGCAGCGGCCCAGAAGTACTATGTGGACAGG
CCTATCTTCAGTCACCTGGCCCTCCAGGAAATACTGCACACGAAGGACAAGATTCCGGAT
TCCATTGGGGATAAGCTAAAACAGGCATTCACATGTACTCCGAAGAAAATAAGAAATATC
ATTTATATGTTCTTACCCATAACTAAGTGGTTGCCAGCATACAAATTCAAGGAGTATGTG
TTGGGTGACTTGGTCTCAGGCATTAGCACAGGGGTGCTTCAGCTTCCTCAAGGCTTAGCC
TTCGCAATGTTGGCAGCTGTGCCTCCGGTGTTCGGCCTGTACTCTTCGTTTTACCCTGTT
ATCATGTATTGTTTTTTTGGAACCTCCAGACACATATCCATAGGTCCGTTTGCTGTAATT
AGCCTGATG
>Rhinopoma hardwickii
ATGGATCATGCTGAAGAAAATGAAATCCTTGCAGCAACCCAGAGGTACTATGTGGAAAGG
CCTATCTTTAGTCATCCCATCCTCCAGGAAAGACTGCACCAGAAGGACAAGATTTCGGAT
TCCATTGGGGATAAGCTGAAACAGGCATTCACATGTACTCCTAAGAAAATAAGAAATATC
ATTTATATGTTCTTACCCATAACTGAGTGGCTGCCAGCATACAAATTCAAGGAGTATGTG
TTGGGTGACTTGGTCTCAGGCATAAGCACAGGGGTGCTTCAGCTTCCTCAAGGTTTAGCC
TTTGCAATGTTGGCAGCTGTGCCTCCGGTGTTTGGCCTGTACTCTTCGTTTTACCCTGTT
ATCATGTATTGCTTTTTTGGAACCTCCAAACACATATCCATAGGTCCATTTGCTGTTATT
AGCCTGATG
>Murina leucogaster
ATGGATCATGCTGAAGAAACTGAAATCCTTGCAGCGGCCCAGAAGTACTATGTGGACAGG
CCTATCTTTAGTCACCTGGCCCTCCAGGAAATACTGCACACGAAGGACAAGATTCCGGAT
TCCATTGGGGATAAGCTAAAACAGGCGTTCACATGTACTCCTAAGAAAATAAGAAATATC
ATTTATATGTTCTTACCCATAACTGAGTGGTTGCCAGCATACAAATTCAAGGAGTATGTG
TTGGGTGACTTGGTCTCAGGCATTAGCACAGGGGTGCTTCAGCTTCCTCAAGGCTTAGCC
TTCGCAATGCTGGCAGCTGTGCCTCCGGTGTTCGGCCTGTACTCCTCGTTTTACCCTGTT
ATCATGTATTGTTTTTTTGGAACCTCCAAACACATATCCATAGGTCCGTTTGCTGTAATT
AGCCTGATG
>Megaderma lyra
ATGGATCATGCTGAAGAAACTGAAATCCTTGCAGCAACCCAGAAGTACTATGTGGAAAGG
CCTATCTTTAGTCATTCAGTCCTCCAGGAAAGACTGCACAAGAAGGACAAGATTTCAGAG
TCCATTGGGGATAAGCTGAAACAGGCATTCACATGTACTCCTAAGAAAATAAGAAATATC
ATTTATATGTTCCTACCCATAACTAAGTGGTTGCCAGCATACAATTTCAAGGAATATGTG
TTGGGTGACTTGGTCTCAGGCATAAGCACAGGAGTGCTTCAGCTTCCTCAAGGTTTAGCC
TTTGCAATGTTGGCAGCTGTGCCACCAGTGTTTGGCCTGTACTCTTCGTTTTACCCTGTT
ATCATGTATTGCTTTTTTGGAACCTCCAGACATATATCCATAGGTCCATTTGCTGTTATT
AGCCTGATG
回复此楼

» 猜你喜欢

» 本主题相关价值贴推荐,对您同样有帮助:

平生两愿:抱着美人,浪迹天涯!
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

594wolfo

至尊木虫 (正式写手)

用perl吧
>Myotis ricketti 后面跟着的 跟它是一行么?
如果是一行 20个碱基=n个字符?
#!/user/bin/perl
use warnings;
use strict;
use Cwd;
my $dir= getcwd; #current directory
open IN, "<$dir\/in\/a.fas";
open OUT, ">>$dir\/out\/a.fas";
for my $line ( {
  chomp($line);
  $line=~ s/[A-Z]{n}$//;  ##n是行尾的目标字符数
  print OUT "$line\n";
}
copy下来 另存为 test.pl 放在跟in out文件夹一个路径上
多个文件的话 glob *.fas下 加个 循环 就行了

本地没安装perl 没法测试了 找本书看看 一天时间就Ok了
2楼2011-04-26 02:35:03
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

594wolfo

至尊木虫 (正式写手)

★ ★
微尘、梦想(金币+2): 谢谢参与应助! 2011-04-26 17:39:30
上个回复中有些字符 被解析成 表情了 麻烦斑竹删除 谢谢
试试这个
用perl吧
>Myotis ricketti 后面跟着的 跟它是一行么?
如果是一行 20个碱基=n个字符?
CODE:
#!/user/bin/perl
use warnings;
use strict;
use Cwd;
my $dir= getcwd; #current directory
open IN, "<$dir\/in\/a.fas";
open OUT, ">>$dir\/out\/a.fas";
  for my $line () {
  chomp($line);
  $line=~ s/[A-Z]{n}$//; ##n是行尾的目标字符数
  print OUT "$line\n";
}
close IN;
close OUT;

copy下来 另存为 test.pl 放在跟in out文件夹一个路径上
多个文件的话 glob *.fas下 加个 循环 就行了

本地没安装perl 没法测试了 找本书看看 一天时间就Ok了
3楼2011-04-26 02:40:36
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

huycwork

金虫 (著名写手)

【答案】应助回帖

★ ★
微尘、梦想(金币+2): 谢谢参与应助! 2011-04-26 17:39:51
俺给你来一个,经过测试的,假定abs文件的每个记录只有两行,多行的没测试过,不过应该也没得问题,因为.不匹配换行。
假定工作目录是in:
CODE:
#!/usr/bin/perl
use strict;
my @files = glob("*.abs");
foreach my $file (@files){
    open IN, "<", $file;
    open OUT, ">", "../out/$file";
    while(){
        if(/^>/){
            print OUT $_;
            next;
        }
        my($data) = /(.*)[ATCG]{20}$/;
        print OUT $data;
    }
    close IN;
    close OUT;
}

漩涡的中心有一块空地,空空的。
4楼2011-04-26 10:28:55
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

huycwork

金虫 (著名写手)

【答案】应助回帖

shuifeng1988(金币+10): 谢谢啊,基 本上好了,但还有个问题,就是序列要求在一行上,而我的序列是多行的,用你的方法,我得先将我的每条序列排在一行上 2011-04-27 01:16:36
上面的程序少了一个换行,补上,print OUT "$data\n";
漩涡的中心有一块空地,空空的。
5楼2011-04-26 10:31:44
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
相关版块跳转 我要订阅楼主 shuifeng1988 的主题更新
最具人气热帖推荐 [查看全部] 作者 回/看 最后发表
[基金申请] 售SCI-T0P文章,我:8O.5.5.1.O.54,科目齐全,可+急 +4 KXLV3nuBVBY7 2026-08-07 5/250 2026-08-08 14:07 by oEVWOejN9taj
[基金申请] 国基金的申报应该改成非等额制,评价高的钱多评价低的钱少,但是增加资助率 +5 a089 2026-08-07 5/250 2026-08-08 14:04 by alian_214
[找工作] 售SCI-T0P文章,我:8O.5.5.1.O.54,科目齐全,可+急 +3 Vi50GxzrFcSG 2026-08-07 4/200 2026-08-08 10:39 by 3OOjAIS77qg2
[硕博家园] 售SCI-T0P文章,我:8O.5.5.1.O.54,科目齐全,可+急 +3 Vi50GxzrFcSG 2026-08-07 6/300 2026-08-08 10:19 by 3OOjAIS77qg2
[基金申请] fileCode有新解读? +8 Tide man 2026-08-08 16/800 2026-08-08 09:59 by Tide man
[硕博家园] 售SCI一区文章,我:8.O.55.1.O.54,科目齐全,可伽急 +3 HEQlVqMTIA7d 2026-08-07 5/250 2026-08-08 08:59 by 6vVgjDL4CnGu
[考博] 售SCI一区文章,我:8.O.55.1.O.54,科目齐全,可伽急 +3 HEQlVqMTIA7d 2026-08-07 3/150 2026-08-08 03:47 by 6vVgjDL4CnGu
[基金申请] 基金中了 +14 laoda193707 2026-08-06 14/700 2026-08-08 00:23 by 实验小白ha
[基金申请] 关于filecode +4 布布和一二 2026-08-07 7/350 2026-08-07 22:55 by zhanghaozhu
[基金申请] 娱乐 +6 Tide man 2026-08-03 6/300 2026-08-07 22:40 by 铁帽子农民
[基金申请] 固定端突然变了,今天 +6 archvillain 2026-08-06 10/500 2026-08-07 16:03 by 医学老男孩
[基金申请] 听说今天filecode变了 +24 布布和一二 2026-08-06 47/2350 2026-08-07 16:02 by zhiyanjiang
[基金申请] filecode变化情况 +6 布布和一二 2026-08-07 22/1100 2026-08-07 14:45 by 且听虎啸
[基金申请] 大家散了吧,后缀研究没有意义,别浪费时间了,过好目前的每一天,不要焦虑 +5 Tide man 2026-08-06 7/350 2026-08-07 13:11 by 医学老男孩
[基金申请] 关于豆爷回答的JTJC与%2F数量 +4 yang182083 2026-08-06 6/300 2026-08-07 12:43 by 虫友是什么虫
[基金申请] 求各位大神看下 100+6 hpkpkpkp 2026-08-05 33/1650 2026-08-06 14:49 by zhiyanjiang
[基金申请] 8月时间戳变的,举个手。玩一下,释放压力 +9 archvillain 2026-08-04 11/550 2026-08-05 20:06 by wlwhappy
[基金申请] 好消息?这个有何含义??? +8 Tide man 2026-08-05 10/500 2026-08-05 16:14 by xmuxiaoyu
[基金申请] 纯娱乐,不喜欢勿喷 +7 Tide man 2026-08-04 10/500 2026-08-04 15:10 by loufangrui
[基金申请] 面上提前没消息,有中的吗 +14 archvillain 2026-08-02 18/900 2026-08-04 14:42 by archvillain
信息提示
请填处理意见