Ottieni HostName dagli argomenti SSH in uno script wrapper


1

Sto sviluppando un semplice script wrapper per SSH per eseguire una pre-elaborazione prima di eseguire effettivamente SSH (per essere precisi: caricare la chiave per-host con keychain / ssh-agent).

Per fare ciò, ho bisogno di estrarre il nome host dagli argomenti della riga di comando. Il wrapper deve supportare tutte le opzioni accettate da SSH, quindi il mio primo approcio semplice che utilizza l'ultimo parametro della riga di comando non funziona se l'utente intende eseguire un comando in modo non interattivo sul lato remoto.

Qualcuno vede un semplice metodo di shell per ottenere il nome host in modo affidabile?

Grazie in anticipo!


Come primo passo, userei getopt per scorrere attraverso il ssh argomenti. Il primo parametro non opzionale dovrebbe essere entrambi hostname o user@hostname (dove hostname è un nome, un indirizzo IP o un alias dal file di configurazione ssh [s]).
user4556274

$(hostname) ?
DavidPostill

@ user4556274: ho pensato anche a questo, ma non avrei dovuto saltare argomenti alle opzioni (come per -o)? Questo in realtà significherebbe nominare tutte le opzioni SSH nello script, giusto?
steiny

@DavidPostill: Sto cercando il nome host remoto specificato, non quello locale ...
steiny
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.