#!/usr/bin/env bash # # shortcut.sh # Dieses Script erstellt eine HTML Redirect Datei und kann mit jedem Browser geöffnet werden. # Es können optional ein oder zwei Argumente übergeben werden # Arg 1: Domain oder URL # Arg 2: Dateiname (Basename) # Fehlt ein Argument wird interaktiv abgefragt # # SPDX-License-Identifier: GPL-3.0-or-later # Copyright (C) 2025 www.binarytalk.de # Abfrage URL/Domain per Argument oder Interaktiv if [[ $# -gt 0 ]]; then url="$1" else echo read -p "Shortcut URL oder Domain: " url fi # Prüfung echo $url | grep "\." >/dev/null if [[ $? -ne 0 ]]; then echo "$url ist keine gültige Adresse" exit 1 fi # Korrektur, Protokoll ergänzen echo $url | grep -Ei "https?://" >/dev/null if [[ $? -ne 0 ]]; then url="https://${url}" fi #echo -e "\nURL: ${url}\n" # Sprechenden Dateiname per Argument oder Interaktiv if [[ $# -eq 2 ]]; then dateiname="$2" else echo read -p "Shortcut Dateiname: " dateiname fi # Prüfung/Korrektur dateiname="$(echo $dateiname | sed -E 's!https?://!!I' |sed -E 's/\.html?//I' | tr ' ' '_' | tr '/' '_')" #echo -e "Dateiname: ${dateiname}\n" # Speicherort ermitteln für Datei speicherort="$(xdg-user-dir DESKTOP 2>/dev/null)" || \ { [[ -d ~/Desktop ]] && speicherort="$(echo ~/Desktop)"; } || \ speicherort="~" # Ausgabe was gemacht wird echo -e "\nGeneriere Datei: ${speicherort}/${dateiname}.html" echo -e "Ziel: ${url}\n" # Datei schreiben cat < "${speicherort}/${dateiname}.html" Weiterleitung zu ${dateiname}

${dateiname}

Falls keine automatische Weiterleitung erfolgt, hier klicken.

EOF