{"id":116,"date":"2026-02-11T17:13:12","date_gmt":"2026-02-11T16:13:12","guid":{"rendered":"https:\/\/www.cloutik.com\/?post_type=docs&#038;p=116"},"modified":"2026-02-11T17:13:12","modified_gmt":"2026-02-11T16:13:12","password":"","slug":"date-and-time-scripting","status":"publish","type":"docs","link":"https:\/\/www.cloutik.com\/fr\/knowledge-base\/date-and-time-scripting\/","title":{"rendered":"Script de date et d'heure"},"content":{"rendered":"<p>La fonction pour obtenir la date et l'heure sur RouterOS est tr\u00e8s simple<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>:date locale [\/horloge syst\u00e8me obtenir la date]\n:heure locale [\/l'horloge syst\u00e8me obtient l'heure]\n<\/code><\/pre>\n\n\n\n<p>Mauvaise nouvelle, la variable $date contient la valeur \u00ab Dec\/25\/2018 \u00bb qui n'est pas tr\u00e8s adapt\u00e9e aux op\u00e9rations de scripts. Ensuite si vous souhaitez obtenir un format plus adapt\u00e9, comme par exemple 2018-12-25, il faut manipuler le contenu de la variable :<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>:date locale [\/horloge syst\u00e8me obtenir la date]\n:jour local [ :pick $date 4 6 ]\n:mois local [ :pick $date 0 3 ]\n:ann\u00e9e locale [ :pick $date 7 11 ]\n<\/code><\/pre>\n\n\n\n<p>Vous avez maintenant les bonnes valeurs dans les trois variables. Mais $mois vous donne \u00ab d\u00e9cembre \u00bb, pas \u00ab 12 \u00bb. Vous devez convertir cet \u00e9l\u00e9ment<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>:date locale [\/horloge syst\u00e8me obtenir la date];\n:mois locaux {\"jan\"=\"01\";\"feb\"=\"02\";\"mar\"=\"03\";\"apr\"=\"04\";\"may\"=\"05\";\"jun\"=\"06 \";\"jul\"=\"07\";\"aug\"=\"08\";\"sep\"=\"09\";\"oct\"=10;\"nov\"=11;\"dec\"=12};\n:jour local [:tonum [:pick $date 4 6]];:ann\u00e9e locale [:tonum [:pick $date 7 11]];:mois local [:pick $date 0 3];:local mm (:$ mois-&gt;$mois);\n:local newdate \"$ann\u00e9e-$mm-$jour\";\n<\/code><\/pre>\n\n\n\n<p>Et voil\u00e0, la variable newdate contient d\u00e9sormais \u00ab 2018-12-25 \u00bb.<\/p>\n\n\n\n<p>Les forums Mikrotik fournissent de nombreux exemples de manipulations de dates. L'exemple suivant fourni par BlackVS (ici) donne un bon aper\u00e7u de certaines possibilit\u00e9s de script avanc\u00e9es :<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>###func_shiftDate - ajoute des jours \u00e0 ce jour\n#Saisie : date, jours\n#date - \"1\/jan\/2017\"\n#jours - nombre\n#correct uniquement pour les ann\u00e9es &gt;1918\n#d\u00e9commenter pour tester\n# : date locale \"01\/01\/2100\"\n# : jours locaux 2560\n###\n# : mettez \"$date + $jours\"\n\n:jours locaux {31;28;31;30;31;30;31;31;30;31;30;31}\n:mois locaux {\"jan\"=1;\"feb\"=2;\"mar\"=3;\"apr\"=4;\"may\"=5;\"jun\"=6;\"jul\"=7;\"aug\"= 8;\"sept\"=9;\"oct\"=10;\"nov\"=11;\"d\u00e9c\"=12}\n:local mois {\"jan\";\"feb\";\"mar\";\"apr\";\"may\";\"jun\";\"jul\";\"aug\";\"sep\";\"oct\";\"nov\";\"dec \"}\n:local jj [:tonum [:pick $date 4 6]]\n:local aa [:tonum [:pick $date 7 11]]\n:mois local [:pick $date 0 3]\n:local mm (:$mois-&gt;$mois)\n:set jj ($jj+$jours)\n:local dm [:pick $mdays ($mm-1)]\n:if ($mm=2 &amp;&amp; (($yy&amp;3=0 &amp;&amp; ($yy\/100100 != $yy)) || $yy\/400400=$yy) ) do={ :set dm 29 }\n:while ($dd&gt;$dm) do={\n:set jj ($jj-$dm)\n:d\u00e9finir mm ($mm+1)\n:if ($mm&gt;12) faire={\n:d\u00e9finir mm 1\n:set aa ($aa+1)\n}\n:set dm [:pick $mdays ($mm-1)]\n:if ($mm=2 &amp;&amp; (($yy&amp;3=0 &amp;&amp; ($yy\/100100 != $yy)) || $yy\/400400=$yy) ) do={ :set dm 29 }\n} ;\n:local res \"$[:pick $monthr ($mm-1)]\/\"\n:if ($dd&lt;10) do={ :set res ($res.&quot;0&quot;) }\n:set $res &quot;$res$jj\/$yy&quot;\n:retour $res\n<\/code><\/pre>\n\n\n\n<p>Avec cette fonction vous disposez d'une fonction qui peut \u00eatre ex\u00e9cut\u00e9e dans un autre script :<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>:local shiftDate [:parse [\/system script get func_shiftDate source]]\n\n:put [$shiftDate date=\"jan\/01\/2017\" jours=256]\n<\/code><\/pre>\n\n\n\n<p>Vous devriez obtenir le \u00ab 14 septembre 2017 \u00bb<\/p>","protected":false},"excerpt":{"rendered":"<p>The function to obtain the date and time on RouterOS is very simple Bad news, the variable $date contains the value \u201cDec\/25\/2018\u201d which is not very adapted to scripting operations. Then if you want to get a more adapted format, such as 2018-12-25, you have to manipulate the content of the variable : Now you [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"closed","template":"","meta":{"footnotes":""},"doc_category":[11],"doc_tag":[],"class_list":["post-116","docs","type-docs","status-publish","hentry","doc_category-scripts-and-tips"],"year_month":"2026-04","word_count":382,"total_views":0,"reactions":{"happy":0,"normal":0,"sad":0},"author_info":{"name":"tarik.moussaoui","author_nicename":"tarik-moussaoui","author_url":"https:\/\/www.cloutik.com\/fr\/author\/tarik-moussaoui\/"},"doc_category_info":[{"term_name":"Scripts and tips","term_url":"https:\/\/www.cloutik.com\/fr\/docs-category\/scripts-and-tips\/"}],"doc_tag_info":[],"_links":{"self":[{"href":"https:\/\/www.cloutik.com\/fr\/wp-json\/wp\/v2\/docs\/116","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.cloutik.com\/fr\/wp-json\/wp\/v2\/docs"}],"about":[{"href":"https:\/\/www.cloutik.com\/fr\/wp-json\/wp\/v2\/types\/docs"}],"author":[{"embeddable":true,"href":"https:\/\/www.cloutik.com\/fr\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.cloutik.com\/fr\/wp-json\/wp\/v2\/comments?post=116"}],"version-history":[{"count":1,"href":"https:\/\/www.cloutik.com\/fr\/wp-json\/wp\/v2\/docs\/116\/revisions"}],"predecessor-version":[{"id":117,"href":"https:\/\/www.cloutik.com\/fr\/wp-json\/wp\/v2\/docs\/116\/revisions\/117"}],"wp:attachment":[{"href":"https:\/\/www.cloutik.com\/fr\/wp-json\/wp\/v2\/media?parent=116"}],"wp:term":[{"taxonomy":"doc_category","embeddable":true,"href":"https:\/\/www.cloutik.com\/fr\/wp-json\/wp\/v2\/doc_category?post=116"},{"taxonomy":"doc_tag","embeddable":true,"href":"https:\/\/www.cloutik.com\/fr\/wp-json\/wp\/v2\/doc_tag?post=116"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}