#!/bin/bash DEFAULT_LOG_FILE="$HOME/log.txt" ACTIVE_LOG_FILE="$HOME/Gitea/logger/log.txt" # Die tatsächlich genutzte Logdatei kann mit log_init "dateiname" gesetzt werden. log_init() { ACTIVE_LOG_FILE="${1:-$DEFAULT_LOG_FILE}" mkdir -p "$(dirname "${ACTIVE_LOG_FILE}")" echo "[i] Log-Datei initialisiert: $ACTIVE_LOG_FILE" >>$ACTIVE_LOG_FILE } _log_dual() { local level="$1" local message="$2" local timestamp timestamp="$(date '+%Y-%m-%d %H:%M:%S')" local line="${timestamp} [${level}] ${message}" echo "$line" # Konsole echo "$line" >> "${ACTIVE_LOG_FILE}" # Logdatei } log_info() { _log_dual "INFO" "$1"; } log_warn() { _log_dual "WARN" "$1"; } log_error() { _log_dual "ERROR" "$1"; } log_start() { clear _log_dual " " " " _log_dual " " " " _log_dual "START" "--- $1 gestartet ---" _log_dual "START" "--- Script: $0 ---" } log_end() { _log_dual "END" "--- $1 abgeschlossen ---" echo "" >> $ACTIVE_LOG_FILE echo "" >> $ACTIVE_LOG_FILE echo "" >> $ACTIVE_LOG_FILE }