Find all files (excluding hidden files) in the current directory, randomly select half of them, and create a backup copy of each one by copying it and adding ".bak" to the end of the filename.
find $(ls | awk 'BEGIN {srand()} !/^$/ && !/^\./ { if (rand() <= .5) print $0}') -exec cp {} {}.bak \;