我有一个名为shuffle.pl
. 当我perl shuffle.pl Input Shuffled
用来执行时,它成功工作并且没有显示错误。
我在我的主目录下创建了一个名为./tools
的目录,并将此路径设置为.cshrc
. 所以我可以在不输入执行的情况下执行程序perl
。(这是我第一次这样做,可能这里有些错误)
但是当我将 shuffle.pl 移动到 ~/.tools 并执行 . 它显示我在第 5 行有错误。但如果我使用perl ~/.tools/shuffle.pl
它可以工作。所以这意味着它在我的程序中应该没有语法错误,但是为什么我把我的程序放到 ~/.tools 后它不能工作
错误信息
.tools/shuffle.pl: 5: Syntax error: "(" unexpected
.cshrc
set path = (. ~ ~/.tools /sbin /bin /usr/sbin /usr/bin /usr/games /usr/local/sbin /usr/local/bin )
谢谢
这是我的程序
#!/usr/bin/perl
use strict;
use warnings;
use List::Util qw(first max maxstr min minstr reduce shuffle sum);
open(my $fh,"<","$ARGV[0]");
my @Lines = readline($fh);
my @Shuffled = shuffle(@Lines);
close $fh;
open(my $shuf,">","$ARGV[1]");
print $shuf @Shuffled;
close $shuf;