Implement optional recursive mode flag
Currently, the actions "WIPE", "ERASE", "REMOVE" are recursing across any sub-directory stored under the main, passed as an argument. It is desirable to implement a flag to enable this behavior instead of having it as default.
Recurse helper:
#######################################
# Recurse the selected action for any descendant directory
# Globals:
# None
# Arguments:
# The action name
# An array of directories passed by reference
# Outputs:
# Writes the results to stdout
#######################################
__recurse_action() {
action="$1"
if [ ${#directories[@]} -gt 0 ]; then
for dir in "${directories[@]}"; do
echo
case $action in
"WIPE")
secure_wipe "$dir"
;;
"ERASE")
erase "$dir"
;;
"REMOVE")
remove "$dir"
;;
*)
err "Action not available"
exit 1
;;
esac
done
fi
}
Example call: __recurse_action "REMOVE" directories