Files
linux-scripts/Alias/aliases.sh

35 lines
890 B
Bash
Executable File

#!/bin/bash
CATEGORIES_DIR="./Aliases"
TARGET_FILE="$HOME/.bashrc_aliases"
echo "Verfügbare Kategorien:"
select_files=()
i=1
for file in "$CATEGORIES_DIR"/*.sh; do
filename=$(basename "$file")
echo " [$i] $filename"
select_files+=("$file")
((i++))
done
echo
read -p "Gib die Nummern der Kategorien ein, getrennt mit Leerzeichen (z.B. '1 3'): " -a choices
# Backup alte Datei
cp "$TARGET_FILE" "${TARGET_FILE}.bak"
# Neue Datei erstellen
> "$TARGET_FILE"
for choice in "${choices[@]}"; do
if [[ "$choice" =~ ^[0-9]+$ ]] && (( choice >= 1 && choice <= ${#select_files[@]} )); then
cat "${select_files[$((choice-1))]}" >> "$TARGET_FILE"
echo "" >> "$TARGET_FILE"
else
echo "Ungültige Auswahl: $choice"
fi
done
echo "Aliase aktualisiert in $TARGET_FILE"
echo "Bitte führe 'source ~/.bashrc_aliases' oder öffne ein neues Terminal."