Вот как пойдет ваша программа
#!/usr/bin/perl
use strict;
use warnings;
my $proteinfilename = 'peptide.txt';
open(PROTEINFILE, $proteinfilename) or die "Can't write to file '$proteinfilename' [$!]\n";
my $protein = <PROTEINFILE>;
close PROTEINFILE;
print $protein;
Вам необходимо добавить расширение файла (например, .txt) в конце, как показано ниже.
my $proteinfilename = 'peptide.txt';
Ваша программа скажет peptide_test.pl
, и входной текстовый файл peptide.txt
должен находиться в одном каталоге.
Если они не находятся в одном каталоге, используйте абсолютный путь, как показано ниже.
my $proteinfilename = 'C:\somedirectory\peptide.txt';
Примечание: используйте одинарные кавычки в случае абсолютного пути. Это игнорирует обратную косую черту \
в пути.
Теперь об ошибках. Если вы не используете оператор die
, вы будетеполучить ошибку
readline<> on closed filehandle PROTEINFILE at C:\BIN\protein.pl
После использования die
or die $! ;
вы получите ошибку No such file or directory.
Также всегда
use strict;
use warnings;
-w устарела после perl 5.6
.Эти две строки / утверждения помогут вам найти опечаток, синтаксических ошибок
И еще, я не думаю, что вам нужно exit;
, в конце. См. Функцию выхода.