Unzip All Files In Subfolders Linux May 2026
find . -name "*.zip" -type f -print0 | while IFS= read -r -d '' zipfile; do unzip -o "$zipfile" -d "$(dirname "$zipfile")" done Sometimes you don’t want to preserve the subfolder structure—you want all extracted files dumped into one folder (e.g., ~/extracted ):
find "$SEARCH_DIR" -name "*.zip" -type f -print0 | while IFS= read -r -d '' zip; do target=$(dirname "$zip") echo "Extracting: $zip -> $target" unzip $OVERWRITE -q "$zip" -d "$target" if [ $? -eq 0 ] && [ "$DELETE_AFTER" = true ]; then rm "$zip" echo "Deleted: $zip" fi done unzip all files in subfolders linux
#!/bin/bash # Usage: ./unzip-all.sh [directory] [--overwrite] [--delete] SEARCH_DIR="$1:-." OVERWRITE="" DELETE_AFTER=false unzip all files in subfolders linux