Respuestas:
El formateo se puede hacer así (asumí que te referías a HH: MM en lugar de HH: SS, pero es fácil de cambiar):
Time.now.strftime("%d/%m/%Y %H:%M")
#=> "14/09/2011 14:09"
Actualizado para el cambio:
d = DateTime.now
d.strftime("%d/%m/%Y %H:%M")
#=> "11/06/2017 18:11"
d.next_month.strftime("%d/%m/%Y %H:%M")
#=> "11/07/2017 18:11"
Lo necesitas require 'date'para esto por cierto.
Dateobjeto. De todos modos, tomé su comentario como una oportunidad para actualizar finalmente esta respuesta para las versiones actuales de Ruby.
require 'date'
current_time = DateTime.now
current_time.strftime "%d/%m/%Y %H:%M"
# => "14/09/2011 17:02"
current_time.next_month.strftime "%d/%m/%Y %H:%M"
# => "14/10/2011 17:02"
Por fecha:
#!/usr/bin/ruby -w
date = Time.new
#set 'date' equal to the current date/time.
date = date.day.to_s + "/" + date.month.to_s + "/" + date.year.to_s
#Without this it will output 2015-01-10 11:33:05 +0000; this formats it to display DD/MM/YYYY
puts date
#output the date
Lo anterior mostrará, por ejemplo, 10/01/15
Y por tiempo
time = Time.new
#set 'time' equal to the current time.
time = time.hour.to_s + ":" + time.min.to_s
#Without this it will output 2015-01-10 11:33:05 +0000; this formats it to display hour and minute
puts time
#output the time
Lo anterior mostrará, por ejemplo, 11:33
Luego, para armarlo, agregue al final:
puts date + " " + time