Timestamp en KSH

Bonjour,

je recherche une méthode pour obtenir le TIMESTAMP (nombre de seconde écoulés depuis le 1er janvier 1970) en KSH sous UNIX.

Quelqu’un aurait une solution svp car la je dois avouer que je sèche. J’ai revu en détail les paramètres de la fonctions date mais aucun ne me permet d’avoir ce fameux TIMESTAMP.

Merci de votre aide.

date +%s

[quote name=‘Moktar’ date=’ 20 Apr 2005, 10:41’]date +%s
[right][post=“351800”]<{POST_SNAPBACK}>[/post][/right][/quote]

Le résultat d’unix :
%s

pour info ma version d’unix :
SunOS Generic_117350-04 sun4u sparc SUNW,Sun-Fire-V240

D’autres idées ?

man date ?

Koubiak

[quote name=‹ Rufh › date=’ 20 Apr 2005, 12:03’]Le résultat d’unix :
%s

pour info ma version d’unix :
SunOS Generic_117350-04 sun4u sparc SUNW,Sun-Fire-V240

D’autres idées ?
[right][post=« 351807 »]<{POST_SNAPBACK}>[/post][/right][/quote]

Sur une station Sun Solaris 5.7 no problemo.
Verifie que tu n’as pas d’alias sur date :stuck_out_tongue:

[quote name=‹ Moktar › date=’ 20 Apr 2005, 12:42’]Sur une station Sun Solaris 5.7 no problemo.
Verifie que tu n’as pas d’alias sur date :stuck_out_tongue:
[right][post=« 351839 »]<{POST_SNAPBACK}>[/post][/right][/quote]

Alors j’utilise le date qui se trouve dans /usr/bin donc le standard de SUN.

Il persiste à me donner %s en sortie.

/usr/bin/date +%s
%s

En effet, le %s est une extension GNU. Bah, tout le monde utilise les outils GNU à la place des mer… heuu des outils standard Solaris :stuck_out_tongue:

[quote name=‹ Moktar › date=’ 20 Apr 2005, 13:07’]En effet, le %s est une extension GNU. Bah, tout le monde utilise les outils GNU à la place des mer… heuu des outils standard Solaris  :stuck_out_tongue:
[right][post=« 351856 »]<{POST_SNAPBACK}>[/post][/right][/quote]

Je me disais aussi.

Mais n’y aurai t il aucune solution ?

Aucune solution ? huhuhu.
Tu te loggues sur une station qui a le pack GNU,
Tu écris ça en trois ligne de C,
Tu DL le ‘date’ de GNU,

[quote name=‘Moktar’ date=’ 20 Apr 2005, 13:39’]Aucune solution ? huhuhu.
Tu te loggues sur une station qui a le pack GNU,
Tu écris ça en trois ligne de C,
Tu DL le ‘date’ de GNU,

[right][post=“351877”]<{POST_SNAPBACK}>[/post][/right][/quote]

En effet cette solution m’a traversé l’esprit mais j’ai tout de même précisé dans mon premier message :

je recherche une méthode pour obtenir le TIMESTAMP (nombre de seconde écoulés depuis le 1er janvier 1970) en KSH sous UNIX.

Enfin merci, je vais essayer de me debrouiller

[quote name=‘Rufh’ date=’ 20 Apr 2005, 15:04’]En effet cette solution m’a traversé l’esprit mais j’ai tout de même précisé dans mon premier message :

je recherche une méthode pour obtenir le TIMESTAMP (nombre de seconde écoulés depuis le 1er janvier 1970) en KSH sous UNIX.

Enfin merci, je vais essayer de me debrouiller
[right][post=“351886”]<{POST_SNAPBACK}>[/post][/right][/quote]

Oui mais ça n’a rien à voir avec KSH, KSH est juste un shell qui appel des commandes, télécharges la bonne commande (GNU Date) et ça marchera sous Ksh.

[quote name=‹ ZGoblin › date=’ 20 Apr 2005, 16:57’]Oui mais ça n’a rien à voir avec KSH, KSH est juste un shell qui appel des commandes, télécharges la  bonne commande (GNU Date) et ça marchera sous Ksh.
[right][post=« 351934 »]<{POST_SNAPBACK}>[/post][/right][/quote]

Ah tiens je n’avais pas vu la réponse : /usr/bin/date c’est pas ksh en effet. :stuck_out_tongue:

Au pire tu peux toujours utiliser ça:

Sur un SunOS avec un ksh:

$ uname -a SunOS 5.9 Generic_112233-11 sun4u sparc SUNW,Ultra-80 $ perl -le 'print time' 1114014194

/edit: Sinon c’est mort, il n’y a pas de moyen integré à ksh pour avoir le timestamp. Sauf bidouille de conversion de date dans un script.

Je profite du thread pour demander aux gens qui ont un systeme autre que linux, avec un compilateur autre que gcc, de me dire si ca fonctionne:

[code]#include<stdio.h>
#include<time.h>

int main(void)
{
       time_t val;
       val=time(NULL);
       printf(« Timestamp:%ld\n »,(long)val);
       return 0;
}[/code]
(normalement, time_t est un long int , mais gcc gueule si je fais pas l’explicit cast en (long))

bits/types.h:typedef long int __time_t; time.h:typedef __time_t time_t;

Le code « portable » m’a toujours interesse meme si j’ai jamais eu l’occasion d’avoir suffisament de machines differentes pour tester.
La, avec les bidouille sur time_t, je me demande si c’est la norme (genre POSIX) ou si c’est un truc specifique a linux (d’apres le manpage, c’est POSIX, mais bon)

Si ca ne fonctionne pas sur telle ou telle machine, je veux bien la correction :stuck_out_tongue:

LoneWolf
Portons :stuck_out_tongue:

[quote name=‘Merlin’ date=’ 20 Apr 2005, 17:23’]Au pire tu peux toujours utiliser ça:

Sur un SunOS avec un ksh:

$ uname -a SunOS 5.9 Generic_112233-11 sun4u sparc SUNW,Ultra-80 $ perl -le 'print time' 1114014194

/edit: Sinon c’est mort, il n’y a pas de moyen integré à ksh pour avoir le timestamp. Sauf bidouille de conversion de date dans un script.
[right][post=“351976”]<{POST_SNAPBACK}>[/post][/right][/quote]

Ok merci, la ligne perl fonctionne.

[quote name=‹ LoneWolf › date=’ 20 Apr 2005, 18:15’]Je profite du thread pour demander aux gens qui ont un systeme autre que linux, avec un compilateur autre que gcc, de me dire si ca fonctionne:
[…][right][post=« 351994 »]<{POST_SNAPBACK}>[/post][/right][/quote]

Sous windows avec les SFU qui viennent avec gcc en standard:

% gcc toto.c -o toto.exe % ./toto.exe Timestamp:1114115358 % gcc --version gcc (GCC) 3.3

Mais ça reste du gcc. :stuck_out_tongue:

Bah oui mais non, sur les SFU, je peux faire moi meme :stuck_out_tongue:
Nan sur une Sun, une solaris, une sparc, un cray, une machine d’homme quoi :stuck_out_tongue:

LoneWolf
Allez, meme sur HP-UX, je veux bien :stuck_out_tongue:

Et Hop :stuck_out_tongue:

J’essais de recuperer un SGI qui traine a mon taf et je ferai un test :stuck_out_tongue:

donc sur une Sun :

[quote]clipper ~ $ gcc toto.c -o toto
clipper ~ $ uname -a
SunOS clipper 5.9 Generic_117171-05 sun4u sparc SUNW,Sun-Fire-V250 Solaris
clipper ~ $ ./toto
Timestamp:1114154095[/quote]

Koubiak

Ouais mais non, tout le monde utilise gcc, la :stuck_out_tongue:
Utilisez le compilo sun ou solaris, le truc d’origine plutot, pleeease :stuck_out_tongue:

LoneWolf
Tout malheureux :stuck_out_tongue: