J'ai un fichier avec 10 mots aléatoires. Je peux obtenir mon script perl pour trier le fichier, mais je ne sais pas pourquoi car il trie et écrase le fichier principal. Par exemple file.txt a: "a, c, d, b" je prends lire ce nom de fichier et ensuite le trier dans un autre nom de fichier sorted.txt "a, b, c, d" Mais je ne veux pas avoir mon fichier original file.txt à changer.Tri d'un fichier avec Perl à l'aide d'un menu Shell Script
ce appelle la fonction de tri perl dans mon menu shell:
if [ "$choice" = 2 ]
then
perl perlsort.pl "$filename"
cp $filename $outputfilename
fi
Ceci est mon code perl:
my $filename = shift @ARGV;
open(FH,$filename) or die "$!";
my @lines = <FH>;
close(FH);
$, = "\n";
open(my $output, ">", "$filename") or die "Unable to open $filename: $!\n";
print $output sort map { chomp; $_ } @lines;
close $output;
Comme vous pouvez dire que je suis nouveau à perl :) Comment devrais-je utiliser le fichier :: Temp? – Nagne
Je déteste lire les pages de manuel, mais vous pouvez toujours rechercher la documentation de File :: Temp en tapant tel dans le terminal: perldoc File :: Temp – xyz123