2007-04-24 03:00:38 +04:00
|
|
|
#!/usr/bin/env perl
|
2008-03-14 01:51:39 +03:00
|
|
|
# Perform simple file and directory manipulation in a portable way
|
|
|
|
if ( $#ARGV <= 0 )
|
2007-04-24 03:00:38 +04:00
|
|
|
{
|
2008-03-15 04:03:23 +03:00
|
|
|
print "Usage: $0 mkdir|rmdir|rm|move|gone path1 [path2] [more commands...]\n";
|
2007-04-24 03:00:38 +04:00
|
|
|
exit 1;
|
|
|
|
}
|
2008-03-14 01:51:39 +03:00
|
|
|
|
|
|
|
use File::Copy;
|
|
|
|
while(@ARGV) {
|
|
|
|
my $cmd = shift @ARGV;
|
|
|
|
my $arg = shift @ARGV;
|
|
|
|
if ($cmd eq "mkdir") {
|
|
|
|
mkdir $arg || die "$!";
|
|
|
|
}
|
|
|
|
elsif ($cmd eq "rmdir") {
|
|
|
|
rmdir $arg || die "$!";
|
|
|
|
}
|
|
|
|
elsif ($cmd eq "rm") {
|
|
|
|
unlink $arg || die "$!";
|
|
|
|
}
|
|
|
|
elsif ($cmd eq "move") {
|
|
|
|
my $arg2 = shift @ARGV;
|
|
|
|
move($arg,$arg2) || die "$!";
|
|
|
|
}
|
|
|
|
elsif ($cmd eq "gone") {
|
|
|
|
! -e $arg || die "Path $arg exists";
|
|
|
|
} else {
|
|
|
|
print "Unsupported command $cmd\n";
|
|
|
|
exit 1;
|
|
|
|
}
|
2007-04-24 03:00:38 +04:00
|
|
|
}
|
2008-03-14 01:51:39 +03:00
|
|
|
exit 0;
|