Update Code Base

This commit is contained in:
Patrick Niebeling
2025-07-18 09:25:13 +02:00
parent ba0bc6d7dc
commit 0488d0e6be

View File

@@ -1,28 +1,93 @@
# 🔐 sshs Interaktiver SSH-Verbindungshelfer mit `fzf` # 🔐 sshs Interaktiver SSH-Verbindungshelfer mit `fzf`
Ein komfortables Bash-Skript zur schnellen SSH-Verbindung mit bekannten oder neuen Hosts. `sshs` ist ein kompaktes Bash-Skript für den schnellen und bequemen Aufbau von SSH-Verbindungen.
Jetzt auch mit direktem Aufruf über Parameter (z.B. `sshs host:port`). 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 ## 📦 Features
- Liest bekannte Hosts aus `~/.ssh/known_hosts` - Interaktive Auswahl bekannter Hosts über [`fzf`](https://github.com/junegunn/fzf)
- Zeigt Liste als `host:port` (durchsuchbar) - Hostliste im Format `host:port` vollständig durchsuchbar
- Direkteingabe oder freie manuelle Eingabe möglich - Unterstützung für manuelle Eingabe neuer Hosts (inkl. Port)
- **Parameter-Unterstützung:** - Direkte Verbindung über Parameter möglich:
- `sshs host` - `sshs host`
- `sshs host:port` - `sshs host:port`
- `sshs user@host` - `sshs user@host`
- `sshs user@host:port` - `sshs user@host:port`
- Standard-Port 22 bei fehlender Angabe - Automatische Erkennung von Host, Port und optional Benutzer
- Benutzername optional wählbar - Standard-Port 22 wird automatisch verwendet, wenn keiner angegeben ist
- Kein lästiges Port-Abfragen schnell & effizient
--- ---
## 🧪 Beispiele ## 🧪 Anwendungsbeispiele
Interaktiv starten: ### 🔍 Interaktiv starten
```bash ```bash
sshs 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.