use Filesystem::Preview; if ($ARGV[0] eq "--preview") { shift; enable_filesystem_preview(); } ... rename $file_from, $file_to or die "Could not move file: $!\n"; chmod 0777, $file_to or die "Could not chmod file: $!\n"; unlink $temp_file or die "Could not delete file: $!\n"; #### rename file1.txt -> file2.txt chmod 0777 file2.txt unlink /tmp/tempfile.dat #### use Filesystem::Preview; enable_filesystem_preview(CACHE => 1); ... print_cached_filesystem_actions(); if (user_confirmation("Perform operations?")) { execute_cached_filesystem_actions(); } else { die "User confirmation required\n"; }