OVH Cloud OVH Cloud

Quantième de l'année en commande DOS

24 réponses
Avatar
---DGI972---
Bonjour,
Je suis toujours à la recherche d'une commande DOS pour récupérer le
Quantième de l'année.
Pour aujourdh'hui 13/09/2006 :Quantième= 256
J'ai la formule magique en vbs:
QUANT=Date()-DateSerial(Year(Date()),1,1)+1
mais pas en ligne de commande.
date /? me donne aucune indication
Je ne trouve pas sur le net.

j'ai besoin de copier un nom de fichier avec le quantième de l'année

for /F %%i in ('dir \\97.20.2.103\TOTO\FICHIER*.* /B /O:E') do (set
dernier=%%i)
SET QQQ= 'fabrication du quantième de l'année
copy \\97.20.2.103\TOT\%dernier%
\\192.168.15.31\D\TATA\%dernier%QQQ.txt

si vous avez la formule magique sous la main !

merci

10 réponses

1 2 3
Avatar
Gilles LAURENT
"---DGI972---" <gilles.dermigny@*NO SPAM*laposte.net> a écrit dans le
message de news:

[...]

| ET oui cela marche.
| c'est un vilain : devant :_dayNumberOfTheYear.
| Pourtant j'ai fait plusieur copier coller selon plusieur réglage de
| quotage (j'utilise le logiciel MesNews avec le tournevis petit coucou
| à Jean de Belgique).
|
| c'est quoi ROTFL ?

C'est un smiley : une tête qui tourne sur elle-même et qui se ballade de
droite à gauche en riant !
Outlook Express + OE-QuoteFix ;-)

| merci encore
| Assez rapide le retour. mdr

Hé hé ;-)

| Je vais essayer tout de suite la formule magique de M BELLAMY.
| ;-)

Efficace mais beaucoup moins élégant !
Ce n'est que mon point de vue ;-)

--
Gilles LAURENT
Me contacter : http://cerbermail.com/?zoTY7ZkLcD
Avatar
---DGI972---
Jean-Claude BELLAMY a formulé ce jeudi :
Dans le message :,
---DGI972--- <gilles.dermigny@*NO SPAM*laposte.net> a pris la peine d'écrire
ce qui suit :
Bonjour,
Je suis toujours à la recherche d'une commande DOS


NANNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNn !
Vu que tu parles de VBS plus loin, c'est que tu es sous Windows.
Donc tu veux parler de COMMANDE (tout court), ce qui n'a rien à voir avec
DOS !



Oui vous avez tout a fait raison.

pour récupérer le Quantième de l'année.
Pour aujourdh'hui 13/09/2006 :Quantième= 256
J'ai la formule magique en vbs:
QUANTÚte()-DateSerial(Year(Date()),1,1)+1
mais pas en ligne de commande.
date /? me donne aucune indication
Je ne trouve pas sur le net.

j'ai besoin de copier un nom de fichier avec le quantième de l'année

for /F %%i in ('dir 97.20.2.103TOTOFICHIER*.* /B /O:E') do (set
dernier=%%i)
SET QQQ= 'fabrication du quantième de l'année
copy 97.20.2.103TOT%dernier%
192.168.15.31DTATA%dernier%QQQ.txt

si vous avez la formule magique sous la main !


Il n'y a pas de magie là dedans, il suffit de faire fonctionner ses NEURONES
!!!
Ca c'est méchant.

Et en l'occurence se rappeler ses connaissances en arithmétique élémentaire
(addition et congruence, ainsi que les syntaxes des commandes "IF" et "SET" !
Et si on ne connait pas les dites syntaxes, on exécute les commadnes "IF /?"
et "SET /?" !
Veuillez escuser mon niveau en Maths, je vous l'accorde, j'ai été

repêché au second tour au BAC F2 (Electronique) avec 9/20 et 11/20 au
second tour.J'ai le BTS F2 et je n'ai pas peu tenir un année (de Maths
signal B) au CNAM a Paris, mais j'ai beau relire mes anciens cours mes
proffesseur n'ont jamais fait allusion a des calculs arithmétique
élémentaire pour trouver le Quantième de l'année.

Définition de conguence en MATH: Relation entre deux nombres telle que
leur différence est le multiple d'un troisième nombre donné appelé
module. (je vais bénéficier tous le monde !!!)
C'est avec ces démarches simples et de bons sens (= agricoles) que l'on peut
mourir moins idiot ! ;-)

Encore trés méchant, car je vous garantis que j'ai chercher sur Google

avant de posé mes lignes sur le forum.
Ficher "quantieme.bat"
================ > Admet en paramètre la date sous la forme dd/mm/aaaa
Si absente -> on prend la date du jour
Ce script tient compte des années bissextiles jusqu'en 2099

Si on veut aller au dela (;-) ), il suffit d'ajouter un test de congruence à
100 pour l'année, et si c'est le cas tester la congruence à 4 du quotient
entier de l'année par 100. S'il n'y a pas de congruence, l'année n'est pas
bissextile (2100,2200, 2300,2500,...)
Je n'ai pas prévu ce test car je pense que dans les meilleurs cas, mon batch
figurera seulement dans un musée de l'informatique ! ;-)

NB: Pour pouvoir effectuer les comparaisons numériques,
le script ôte le "0" en tête éventuel dans le jour ou le mois

------------ couper ici ------------
@echo off
IF %1.==. (set d=%date%) ELSE (set d=%1)
Set j=%d:~0,2%
set i=%j:~0,1%
if %i% EQU 0 set j=%j:~1%
Set m=%d:~3,2%
set i=%m:~0,1%
if %i% EQU 0 set m=%m:~1%
Set a=%d:~6,4%
Set /A mod=a %% 4
Set fev(
if %mod% EQU 0 set /A fev)
Set quant=%j%
if %m% GTR 1 set /A quant=%quant% + 31
if %m% GTR 2 set /A quant=%quant% + fev
if %m% GTR 3 set /A quant=%quant% + 31
if %m% GTR 4 set /A quant=%quant% + 30
if %m% GTR 5 set /A quant=%quant% + 31
if %m% GTR 6 set /A quant=%quant% + 30
if %m% GTR 7 set /A quant=%quant% + 31
if %m% GTR 8 set /A quant=%quant% + 31
if %m% GTR 9 set /A quant=%quant% + 30
if %m% GTR 10 set /A quant=%quant% + 31
if %m% GTR 11 set /A quant=%quant% + 30
echo Le %d% est le jour %quant%
------------ couper ici ------------

Exemples :
I:VBS>quantieme.bat
Le 14/09/2006 est le jour 257

I:VBS>quantieme.bat 30/09/1949
Le 30/09/1949 est le jour 273

I:VBS>quantieme.bat 01/03/2000
Le 01/03/2000 est le jour 61

I:VBS>quantieme.bat 01/03/2001
Le 01/03/2001 est le jour 60

I:VBS>quantieme.bat 01/03/2004
Le 01/03/2004 est le jour 61

I:VBS>quantieme.bat 31/12/2006
Le 31/12/2006 est le jour 365


Donc dans ton cas, la ligne intéressante du batch est donc la suivante :
...
copy 97.20.2.103TOT%dernier%
192.168.15.31DTATA%dernier%%quant%.txt


C'est vrai avec ces démarches simples et de bons sens (= agricoles), le
résultat est présent.

Merci M BELLAMY


Avatar
---DGI972---
Il se trouve que Gilles LAURENT a formulé :
"---DGI972---" <gilles.dermigny@*NO SPAM*laposte.net> a écrit dans le
message de news:

[...]

ET oui cela marche.
c'est un vilain : devant :_dayNumberOfTheYear.
Pourtant j'ai fait plusieur copier coller selon plusieur réglage de
quotage (j'utilise le logiciel MesNews avec le tournevis petit coucou
à Jean de Belgique).

c'est quoi ROTFL ?


C'est un smiley : une tête qui tourne sur elle-même et qui se ballade de
droite à gauche en riant !
Outlook Express + OE-QuoteFix ;-)

merci encore
Assez rapide le retour. mdr


Hé hé ;-)

Je vais essayer tout de suite la formule magique de M BELLAMY.
;-)


Efficace mais beaucoup moins élégant !
Ce n'est que mon point de vue ;-)


La j'en suis convaincu
vous ne dormez jamais !!! :-Z


Avatar
---DGI972---
---DGI972--- a formulé la demande :
Il se trouve que Gilles LAURENT a formulé :
"---DGI972---" <gilles.dermigny@*NO SPAM*laposte.net> a écrit dans le
message de news:

[...]

ET oui cela marche.
c'est un vilain : devant :_dayNumberOfTheYear.
Pourtant j'ai fait plusieur copier coller selon plusieur réglage de
quotage (j'utilise le logiciel MesNews avec le tournevis petit coucou
à Jean de Belgique).

c'est quoi ROTFL ?


C'est un smiley : une tête qui tourne sur elle-même et qui se ballade de
droite à gauche en riant !
Outlook Express + OE-QuoteFix ;-)

merci encore
Assez rapide le retour. mdr


Hé hé ;-)

Je vais essayer tout de suite la formule magique de M BELLAMY.
;-)


Efficace mais beaucoup moins élégant !
Ce n'est que mon point de vue ;-)


La j'en suis convaincu
vous ne dormez jamais !!! :-Z


Il y a un piège entre XP et W2K
sous XP OK car le résultat de date est:
C:>date /t
14/09/2006
sous W2k :-@ car le résulat de date est:
C:>date /t
jeu. 14/09/2006

Je suppose que le "tokens" n'est plus bon:

for /f "tokens=1-3 delims=/" %%i in ('echo %1') do (set d=%%i& set
m=%%j& set y=%%k)

je vous tiens au courant. :'(

DGI972



Avatar
Gilles LAURENT
"---DGI972---" <gilles.dermigny@*NO SPAM*laposte.net> a écrit dans le
message de news:

[...]

| Il y a un piège entre XP et W2K
| sous XP OK car le résultat de date est:
| C:>date /t
| 14/09/2006
| sous W2k :-@ car le résulat de date est:
| C:>date /t
| jeu. 14/09/2006
|
| Je suppose que le "tokens" n'est plus bon:

| for /f "tokens=1-3 delims=/" %%i in ('echo %1') do (set d=%%i& set
| m=%%j& set y=%%k)

Pour supporter le format de la variable d'environnement %date% W2k et Xp
alors (avec numérotation des lignes) :
1.for /f "tokens=1-3 delims=/" %%i in ('echo %*) do (
2. set d=%%i& set m=%%j& set y=%%k
3. set d=!d:~-2!
4.)

C'est tout le problème des extractions des sorties de commandes. Le
nouveau shell Microsoft Windows PowerShell permettra d'éliminer ce
problème. Je vous invite à découvrir ce nouveau shell à l'adresse
suivante :
http://www.microsoft.com/windowsserver2003/technologies/management/powershell/default.mspx

Sans oublier le blog de Jacques Barathon [MS] sur Windows PowerShell :
http://janel.spaces.msn.com/blog

--
Gilles LAURENT
Me contacter : http://cerbermail.com/?zoTY7ZkLcD
Avatar
Jacques Barathon [MS]
"---DGI972---" <gilles.dermigny@*NO SPAM*laposte.net> a écrit dans le
message de news:

c'est quoi ROTFL ?
Assez rapide le retour. mdr


ROTFL = mdr (plus ou moins)

ROTFL veut dire Roll On The Floor Laughing (en gros, "je rigole à en rouler
par terre"). Les anglo-saxons adorent ces acronymes, ils en saupoudrent tous
leurs emails. Il y a quelques jours j'en ai vu un qui m'a laissé perplexe
quelques secondes avant de comprendre ce qu'il voulait dire:

IANAL.

Je vous laisse réfléchir là-dessus. Evidemment, sans le contexte c'est plus
dur. Je donnerai la solution demain matin. :-)

Jacques

PS. Ou comment démarrer un troll alors que vendredi vient juste de
commencer...

Avatar
Gilles LAURENT
Annule et remplace :

1.for /f "tokens=1-3 delims=/" %%i in ('echo %*') do (
2. set d=%%i& set m=%%j& set y=%%k
3. set d=!d:~-2!
4.)

--
Gilles LAURENT
Me contacter : http://cerbermail.com/?zoTY7ZkLcD
Avatar
Gilles LAURENT
"Jacques Barathon [MS]" a écrit dans le
message de news:

Bonsoir Jacques,

| ROTFL = mdr (plus ou moins)
|
| ROTFL veut dire Roll On The Floor Laughing (en gros, "je rigole à en
| rouler par terre"). Les anglo-saxons adorent ces acronymes, ils en
| saupoudrent tous leurs emails.

Merci pour ce complément d'information ;-)

| Il y a quelques jours j'en ai vu un
| qui m'a laissé perplexe quelques secondes avant de comprendre ce
| qu'il voulait dire:
|
| IANAL.
| Je vous laisse réfléchir là-dessus. Evidemment, sans le contexte
| c'est plus dur. Je donnerai la solution demain matin. :-)

I Am Not A Lawyer

| PS. Ou comment démarrer un troll alors que vendredi vient juste de
| commencer...

Et que dites vous de celui-ci ?
ROTFLMAOWPIMP

--
Gilles LAURENT
Me contacter : http://cerbermail.com/?zoTY7ZkLcD
Avatar
Jacques Barathon [MS]
"Gilles LAURENT" a écrit dans le message de news:
%
| IANAL.
| Je vous laisse réfléchir là-dessus. Evidemment, sans le contexte
| c'est plus dur. Je donnerai la solution demain matin. :-)

I Am Not A Lawyer


Trop fort :-)

| PS. Ou comment démarrer un troll alors que vendredi vient juste de
| commencer...

Et que dites vous de celui-ci ?
ROTFLMAOWPIMP


Grand classique: ROTFL My Ass Off While Peeing In My Pants. C'est une des
nombreuses variantes de la famille ROTFLMAO (les Maoïstes, en quelque
sorte). La famille comprend également:

ROTFLMAOADL
ROTFLMAOOL
ROTFLMAOSHIH

Quelques cousins célèbres:

ROTFLAVIAB (deux traductions possibles)
ROTFMFAO (facile à dériver à partir des traductions ci-dessus)
etc.

Chacun veut vraiment dire qq chose, j'vous jure!

Bon, là on est vraiment hors sujet. Bonne nuit...
Jacques

Avatar
Gilles LAURENT
"Jacques Barathon [MS]" a écrit dans le
message de news:
|| Et que dites vous de celui-ci ?
|| ROTFLMAOWPIMP
|
| Grand classique: ROTFL My Ass Off While Peeing In My Pants. C'est une
| des nombreuses variantes de la famille ROTFLMAO (les Maoïstes, en
| quelque sorte). La famille comprend également:

Les Maoïstes ROTFL
Excellent ! Trop fort :-)

| ROTFLMAOADL

All Day Long je suppose :-P

| ROTFLMAOOL

?

| ROTFLMAOSHIH

?

|
| Quelques cousins célèbres:
|
| ROTFLAVIAB (deux traductions possibles)

?

| ROTFMFAO (facile à dériver à partir des traductions ci-dessus)

My Fu..'ed Ass Off :-P ?

--
Gilles LAURENT
Me contacter : http://cerbermail.com/?zoTY7ZkLcD
1 2 3