use warnings; use strict; $|++; use Win32::Clipboard; # Take the path from the clipboard # my $clip = Win32::Clipboard(); my $path = $clip->Get(); # Does it look like a valid path ? # if ($path !~ /^([a-z]) :/xi) { die "$path\ndoesn't look like a path\n"; } # The drive letter must be gathered separately to issue a drive # change command # my $drive = $1; my $BAT_FILENAME = 'crun.bat'; open(my $ofh, ">", $BAT_FILENAME) or die $!; print $ofh "${drive}:\n"; print $ofh "cd $path\n"; print $ofh "cmd\n"; close($ofh); # Run ! # system($BAT_FILENAME);