Yes, it did happen, and no, I am not stupid enough to execute rm -rf *. It was a bit more convoluted than that. I was trying to prepare a customized SD card image for Android emulator. The fastest way to do that was to mount the SD card on my GNU/Linux machine and modify the files. The files on SD card have root as the owner. Therefore, the easiest way to maintain a clean state was to do all modifications using sudo. My script included a command rm -r ${base_dir}/${old_file}. While executing the script, due to an error both the variables were not set. It took me a few hours to recover; I never committed the broken script, so, I did not harm anyone else. But since then my bash scripts have always included set -o nounset.