Mercurial > repos > pitagora > imp_exp
view export.pl @ 2:4c225e57d44b draft default tip
Uploaded
author | pitagora |
---|---|
date | Wed, 09 Jul 2014 05:23:25 -0400 |
parents | |
children |
line wrap: on
line source
#!/usr/bin/perl use strict; use File::Copy; use File::Basename; # ARGS my ($symlink, $dest, $logfile, @files)=@ARGV; die("Absolute path required\n") unless $dest =~ /^\//; die("Paths containing '..' are disallowed\n") if $dest =~ /\/\.\.\//; die("Only /home/*, /house/*, and /ifs/* paths are allowed\n") unless $dest =~ /^\/home/ or $dest =~ /^\/house/ or $dest =~ /^\/ifs/; die("Destination folder does not exist: $dest\n") unless -e $dest; die("Destination path is not a folder: $dest\n") unless -d $dest; # CP open(OUT, ">$logfile") or die($!); while (@files) { my $file=shift @files or die("Source filename required\n"); my $name=shift @files or die("Destination filename required\n"); print OUT "$file -> $dest/$name\n"; if ($symlink) { symlink($file, "$dest/$name"); } else { copy($file, "$dest/$name"); } } close OUT; print "Exported ", scalar(@files), " to $dest\n"; exit; __END__ Copyright (c) 2011 US DOE Joint Genome Institute. Use freely under the same license as Galaxy itself.