class Session::Sh

def get_var name

def get_var name
  stdin.puts "#{ ECHO } \"#{ name }=${#{ name }}\""
  stdin.flush
  var = nil
  while((line = stdout.gets))
    m = %r/#{ name }\s*=\s*(.*)/.match line
    if m
      var = m[1] 
      raise ExecutionError, "could not determine <#{ name }> from <#{ line.inspect }>" unless var
      break
    end
  end
  var
end