#!/usr/bin/perl -w use File::Copy; use File::Path; use strict; use warnings; .... /* $filename, $pat_name, $study_date, $study_time, $series_num are defined */ .... my ($new_filename, $dir_path); #create new pathname $dir_path = "$pat_name/$study_date-$study_time/$series_num"; #create new filename $new_filename="$pat_name-$study_date-$study_time-$series_num-$image_num.dcm"; eval { mkpath($dir_path) }; if ($@) { print "Couldn't create $dir_path: $@"; } $new_filename = "$dir_path/$new_filename"; rename($filename,$new_filename) or die( "could not rename $filename to $new_filename: $!\n" );