Kurz notiert: Ein Bash Skript, das ein Projektordner per TAR zusammenpackt und dabei unnötige Dateien und Unterordner ausklammert.
tar.project.sh
#!/bin/bash
#shopt -o -s xtrace
SCRIPT_DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" >/dev/null 2>&1 && pwd )"
DATE=$(date +%Y-%m-%d-%H%M%S)
SOURCE=$1
SUB_DIR_BASE="$SCRIPT_DIR/$SOURCE"
if [ -d $SUB_DIR_BASE ]; then
echo "Verarbeitetes Projekt: $SOURCE"
echo "Verarbeiteter Ordner: $SUB_DIR_BASE"
tar -cvzpf "$SCRIPT_DIR/$SOURCE-$DATE.tar.gz" --exclude="$SUB_DIR_BASE/*/.git/*" --exclude="$SUB_DIR_BASE/.git/*" --exclude="$SUB_DIR_BASE/*/.idea/*" --exclude="$SUB_DIR_BASE/.idea/*" --exclude="$SUB_DIR_BASE/*/target/*" --exclude="$SUB_DIR_BASE/target/*" --exclude="*.iml" "$SUB_DIR_BASE/"
else
echo "Ordner $SUB_DIR_BASE existiert nicht."
fi