1
0
Fork 0
mirror of https://github.com/nishiki/manage-password.git synced 2024-12-18 07:23:30 +00:00
mpw/MPW/UI/CliSSH.rb
2014-01-29 20:49:39 +01:00

42 lines
936 B
Ruby

#!/usr/bin/ruby
# author: nishiki
# mail: nishiki@yaegashi.fr
# info: a simple script who manage your passwords
require "#{APP_ROOT}/MPW/UI/Cli"
class CliSSH < Cli
attr_accessor :server, :port, :login
# Connect to SSH
# args: search -> string to search
def ssh(search)
result = @mpw.search(search, nil, 'ssh')
if result.length > 0
result.each do |r|
server = @server.nil? ? r[MPW::MPW::SERVER] : @server
port = @port.nil? ? r[MPW::MPW::PORT] : @port
login = @login.nil? ? r[MPW::MPW::LOGIN] : @login
passwd = r[MPW::MPW::PASSWORD]
if port.nil? || port.empty?
port = 22
end
puts "#{I18n.t('ssh.display.connect')} ssh #{login}@#{server} -p #{port}"
if passwd.empty?
system("ssh #{login}@#{server} -p #{port}")
else
system("sshpass -p '#{passwd}' ssh #{login}@#{server} -p #{port}")
end
end
else
puts I18n.t('ssh.display.nothing')
end
end
end