How to get the Host value inside ~/.ssh/config
- by iconoclast
Within a ~/.ssh/config or ssh_config file, %h will give you the HostName value, but how do you get the Host ("alias") value?
Why would I want to do that? Well, here's an example
Host some_host_alias
HostName 1.2.3.4
User my_user_name
PasswordAuthentication no
IdentityFile ~/.ssh/some_host_alias.rsa.id
LocalCommand some_script.sh %h # <---- this is the critical line
If I pass %h to the script, then it uses 1.2.3.4, which fails to give it all the options it needs to connect to that machine. I need to pass some_host_alias, but I can't find the % variable for that.
(And: yes! I'm aware of the risk of recursion. That's solved inside the script.)
UPDATE: Kenster pointed out that I could just hard-code the Host value as an argument to the script. Of course this will work in the example I gave, but it won't work if I'm using pattern matching for the Host.