我正在使用@ARGV
构造从<>
输入读取.fasta格式文件。问题是,第一个数组元素必须只是字符串值,所有其他元素都是.fasta文件。我应该如何使用第一个数组元素作为字符串并忽略它/使用<>
构造同时跳转到第二个元素而没有任何错误(在我的练习中需要使用<>
)。
答案 0 :(得分:9)
钻石运算符来自@ARGV
数组,因此在使用shift
之前只需@ARGV
<>
的{{1}}:
my $first = shift(@ARGV);
while (<>) {
# ...
}
或者,由于shift
默认情况下在@ARGV
上工作,因为它在子程序之外使用,只需这样:
my $first = shift;