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`
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.