#! /usr/bin/perl use strict; use warnings; use Tie::File; # Filename must be the script's first argument my $filename = shift; die "girls_lpz.txt\n" if ! defined $filename; die "'$filename' does not exist...\n" if ! -e $filename; die "'$filename' is a directory...\n" if -d _; die "File '$filename' is not writable...\n" if ! -w _; tie my @lines, 'Tie::File', $filename or die "Cannot tie '$filename': $!\n"; # remove last 5 elements of @lines my @move = splice @lines, -5, 5; # add removed elements in the beginning of @lines unshift @lines, @move; untie @lines;