Comment puis-je traiter une URL en Ruby pour extraire les composants (système, nom d'utilisateur, mot de passe, hôte, etc.)?

StackOverflow https://stackoverflow.com/questions/4274213

  •  28-09-2019
  •  | 
  •  

Question

Je suis en train de créer un programme en utilisant Ruby (et Net :: SSH) pour se connecter aux serveurs et effectuer certaines tâches. Les détails du serveur sont à fournir quelque chose comme:

ssh://user:pass@host:port (for a host that does not yet have SSH keys)

ou

user@host

Net :: SSH attend le format suivant:

Net::SSH.start('host', 'user', :password => "password")

Est il y a gem / stdlib qui peut traiter l'URL dans ce format? Ou un regex simple qui peut correspondre aux différentes parties?

Note:. Je suis au courant, et l'utilisation, Capistrano, mais dans ce cas je besoin de plus faibles contrôle de niveau

Était-ce utile?

La solution

Autres conseils

Il y a une classe URI qui devrait aider. Vous pourriez avoir à remplacer le système de ssh avec http main Mais d'abord, je ne pense pas que URI comprend le système de ssh hors de la boîte.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top