In article <1893d21769b943eea293dcc1e9429...@p43400e>, David
Christensen <[email protected]> wrote:
> Is unlink() supposed to provide an error message on failure? The
> documentation does not say so:
I've fixed this in commit 40ea6f68 to perl blead. The entry now reads:
=item unlink LIST
X<unlink> X<delete> X<remove> X<rm> X<del>
=item unlink
Deletes a list of files. On success, it returns the number of files
it successfully deleted. On failure, it returns false and sets C<$!>
(errno):
my $unlinked = unlink 'a', 'b', 'c';
unlink @goners;
unlink glob "*.bak";
On error, C<unlink> will not tell you which files it could not remove.
If you care about the files you could not remove, try them one
at a time:
foreach my $file ( @goners ) {
unlink $file or warn "Could not unlink $file: $!";
}
Note: C<unlink> will not attempt to delete directories unless you are
superuser and the B<-U> flag is supplied to Perl. Even if these
conditions are met, be warned that unlinking a directory can inflict
damage on your filesystem. Finally, using C<unlink> on directories is
not supported on many operating systems. Use C<rmdir> instead.
If LIST is omitted, C<unlink> uses C<$_>.
--
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]
http://learn.perl.org/