#!/usr/bin/perl die "Usage: $0 FILE..." unless @ARGV; use File::Copy 'cp'; mkdir 'bak' unless -e 'bak'; die "'bak' is not a directory" unless -d 'bak'; for (@ARGV) { print STDERR "copying $_... "; cp $_, "bak/$_" or warn "error: $!"; print STDERR "ok\n" unless $!; }