Respostas:
A formatação pode ser feita assim (presumi que você quisesse dizer HH: MM em vez de HH: SS, mas é fácil de mudar):
Time.now.strftime("%d/%m/%Y %H:%M")
#=> "14/09/2011 14:09"
Atualizado para a mudança:
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"
Você precisa require 'date'para este btw.
Dateobjeto. De qualquer forma, aproveitei seu comentário como uma oportunidade para finalmente atualizar esta resposta para as versões atuais do 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"
Para data:
#!/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
O texto acima exibirá, por exemplo, texto 01/10/15
E por tempo
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
Acima será exibido, por exemplo, 11:33
Então, para colocá-lo junto, adicione ao final:
puts date + " " + time