De la simplicité de travailler des dates en Ruby
Imaginons qu’on veuille ajouter 10000 jours au 26/06/2008. Date.new(2008,6,26) permet de créer un premier objet date. La méthode “+” permet ensuite d’ajouter des jours, et pour info “>>” d’ajouter des mois. Modulo un require “Date” au début, on a tout ce qu’il faut ! Il faut juste penser à faire un “to_s” à la fin pour sortir une chaine de caractères, sauf si on utilise “puts” qui l’appelle tout seul…
Au final, même pas besoin de faire un script, une oneliner suffit :
root@vds# ruby -e ‘require “Date”; puts Date.new(2008,6,26) + 10000’ 2035-11-12
Même genre de solution pour trouver un écart de dates, ou bien sûr de nombres :
root@vds# ruby -e ‘require “Date”; puts Date.new(2008,9,19) – Date.new(2008,6,26)’ 85 root@vds# ruby -e ‘puts 10000 – 85’ 9915
Dans 10000 jours depuis le 26/06, c’est à dire 9915 jours à compter d’aujourd’hui, nous serons le 12 novembre 2035 ! Merci Ruby :-)