基本的I/O操作:
输出:
print “Hellon”;
print “Say ”Hello” to NG” , ”n”;
“<<”(本地文档操作符)使用格式:
print <<“文档标志”
输出内容
文档标志
1 :“<<”与“文档标志”之间不能有空格;
2 :末尾的文档标志应顶头书写,标识输出结束
输入$AGRV[0]
读取标准输入<STDIN>:$line=<STDIN>;
文件输入:
#打开句柄:
open IN,“<
# 或者:open IN,infile ordie!;
my $line=<IN>; # <> 钻石符
print $line;
close IN; #关闭句柄
输出到文件
#打开句柄:
open OUT,”>”,
# 或者:openOUT,”>
#追加到文件(原来文件中的内容保留):
open OUT,”>>
#输出内容到文件:
print OUT “Hello, NGn”; #输入内容Hello NG到文件中
#关闭句柄:
close OUT; # 输出结束
$/(当前输入记录分隔符,默认是换行符)的使用:
输入文件test.fasta:
>Scaffold1
AAAAATCTA
GACGA
>Scaffold2
ATCTAAATAT
TTTAAC
open IN,”<test.fasta” or dir$!;
my line = <IN>;print
line = <IN>;print
line = <IN>;print
close IN;
$/=“>”; #把输入记录分隔符改为”>”
open IN,”<test.fasta” or dir$!;
my $line = <IN>;
print $line; #显示:>
$line = <IN>;
print $line;
close IN;
#显示:
>Scaffold1
AAAAATCTA
GACGA
>
只输出第一条序列:
open IN,”<test.fasta” or dir$!;
$/=“>”; # 把输入记录分隔符改为”>”
<IN>; #跳过第一个”>”之前的内容
my $line = <IN>;
chomp $line; # 删掉末尾的”>”
print “>”,$line;
close IN;
$/=“n”; # 把输入记录分隔符改为”n”
#显示
>Scaffold1
AAAAATCTA
GACGA