#!/usr/bin/perl -w
use strict; #使用 strict 校验语法
my $file=shift; #读取执行程序时的第一个参数作为变量 $file 这里应该是指文件名
open IN,$file;
while(my $line=<IN>){ #打开并读取文件的内容
chomp($line); #去掉每一行结尾的换行符
my $t2=$line=~tr/ATGC/TACG/; #统计这一行中ATGC的次数 他程序有问题 应该是 $t2=($line=~s/ATGC/TACG/g);
print $t2,"\n"; #输出次数结果
}
试了一下 他这个程序有问题 是统计每一行的ATGC的出现次数 而且不对, 不应该用tr,, 应该用s
我改了一下
#!/usr/bin/perl -wmy $file=shift;
open IN,$file;
my @line=<IN>; #读取整个文件到数组
my $lines=join("-",@line); #把数组合并成一个字符串
my $t2=($lines=~s/ATGC/TACG/g); #在这个大字符串中统计ATGC出现的次数
print "$t2\n";
我这个是统计整个文件中ATGC出现的次数的
在我的下载器上运行了一下 貌似没问题
root@Nas:~# cat atxtATGC
111ATGC222
111222ATGC ATGC
TACG
root@Nas:~#
root@Nas:~# /testpl atxt
4
root@Nas:~#
以上就是关于Perl入门教程全部的内容,包括:Perl入门教程、Perl脚本产生的core文件如何去分析、Linux (GNU/Linux)下如何执行perl程序等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)