From 0488d0e6be5361d85f151b72ef24e61d1024a0af Mon Sep 17 00:00:00 2001 From: Patrick Niebeling Date: Fri, 18 Jul 2025 09:25:13 +0200 Subject: [PATCH] Update Code Base --- README.md | 85 ++++++++++++++++++++++++++++++++++++++++++++++++------- 1 file changed, 75 insertions(+), 10 deletions(-) diff --git a/README.md b/README.md index e65c8c4..b233d18 100644 --- a/README.md +++ b/README.md @@ -1,28 +1,93 @@ # 🔐 sshs – Interaktiver SSH-Verbindungshelfer mit `fzf` -Ein komfortables Bash-Skript zur schnellen SSH-Verbindung mit bekannten oder neuen Hosts. -Jetzt auch mit direktem Aufruf über Parameter (z. B. `sshs host:port`). +`sshs` ist ein kompaktes Bash-Skript für den schnellen und bequemen Aufbau von SSH-Verbindungen. +Es bietet eine durchsuchbare Liste bekannter Hosts aus `~/.ssh/known_hosts` via `fzf`, +unterstützt aber auch den direkten Aufruf mit Parametern wie `host:port` oder `user@host`. --- ## 📦 Features -- Liest bekannte Hosts aus `~/.ssh/known_hosts` -- Zeigt Liste als `host:port` (durchsuchbar) -- Direkteingabe oder freie manuelle Eingabe möglich -- **Parameter-Unterstützung:** +- Interaktive Auswahl bekannter Hosts über [`fzf`](https://github.com/junegunn/fzf) +- Hostliste im Format `host:port` – vollständig durchsuchbar +- Unterstützung für manuelle Eingabe neuer Hosts (inkl. Port) +- Direkte Verbindung über Parameter möglich: - `sshs host` - `sshs host:port` - `sshs user@host` - `sshs user@host:port` -- Standard-Port 22 bei fehlender Angabe -- Benutzername optional wählbar +- Automatische Erkennung von Host, Port und optional Benutzer +- Standard-Port 22 wird automatisch verwendet, wenn keiner angegeben ist +- Kein lästiges Port-Abfragen – schnell & effizient --- -## 🧪 Beispiele +## 🧪 Anwendungsbeispiele -Interaktiv starten: +### 🔍 Interaktiv starten ```bash sshs +``` + +Es öffnet sich `fzf` mit einer Liste wie: + +``` +server01.local:22 +server02.domain.de:2222 +server03.gnilebein.de:10000 +``` + +Suche, wähle oder gib einfach manuell einen Host ein (z. B. `meinhost.de:2200`). + +### 🚀 Direktverbindung per Parameter + +```bash +sshs server01.local +sshs server02.domain.de:2222 +sshs root@server03.gnilebein.de:10000 +``` + +--- + +## 📋 Voraussetzungen + +- **Bash** (getestet mit Version 4+) +- **fzf** (muss installiert und im `$PATH` verfügbar sein) +- Eine vorhandene Datei `~/.ssh/known_hosts` (ohne gehashte Einträge) + +--- + +## 🔧 Installation + +```bash +cd /usr/local/src +git clone https://gitea.gnilebein.de/gnilebein/sshs.git +ln -sf /usr/local/src/sshs/sshs.sh /usr/local/bin/sshs +chmod +x /usr/local/src/sshs/sshs.sh +``` + +Optional: Füge einen Alias in deine Shell-Konfiguration ein (`.bashrc`, `.zshrc` o. ä.): + +```bash +alias sshs='/usr/local/bin/sshs' +``` + +Dann einmal neu laden: + +```bash +source ~/.bashrc # oder: source ~/.zshrc +``` + +--- + +## 🧑‍💻 Autor + +Erstellt für den täglichen SSH-Alltag – robust, schnell und angenehm zu bedienen. +Herausgeber: [gnilebein.de](https://gnilebein.de) + +--- + +## 📝 Lizenz + +MIT License – frei nutzbar, Änderungen erlaubt, Nutzung auf eigene Verantwortung.