Could you please share it?
#!/bin/bash
zipfile=$1
if [ "x$zipfile" = "x" ] ; then
echo "$0: .zip file expected" >&2
exit 1
fi
zip -d "${zipfile}" "__MACOSX*"
zip -d "${zipfile}" ".DS_Store"
zip -d "${zipfile}" "*/.DS_Store"
unzip -l "${zipfile}" | sort -k 5 if [ ! -f "$zipfile" ]
Instead of if [ "x$zipfile" = "x" ] zip -d "${zipfile}" "__MACOSX*" ".DS_Store" "*/.DS_Store"This is easier to extend if I see something new to exclude (or comment-out some rule).
#!/usr/bin/env bash
set -exuo pipefail
VERBOSE=false
while getopts "v" arg; do
case $arg in
v) VERBOSE=true;;
esac
done
shift $((OPTIND-1))
zipfile=$1
if [ ! -f "$zipfile" ] || [ ! "${zipfile##*.}" = "zip" ] ; then
echo "$0: .zip file expected" >&2
exit 1
fi
zip -d "${zipfile}" "__MACOSX*" ".DS_Store" "*/.DS_Store" "Thumbs.db" "*/Thumbs.db"
if [ $VERBOSE = true ]; then
unzip -l "${zipfile}" | sort -k 5
fi