if( (-f $file) and ( ! link( $file, $new )) ) { warn "Can't link $file to $new: $!\n"; } elsif( (-d $file) and ( ! symlink( $file, $new )) ) { warn "Can't symbolic link $file to $new: $!\n"; } else { $did= 'ln'; }