[UNIX Shell Script] Découpage d'une date

Résolu/Fermé
Trezeg Messages postés 73 Date d'inscription mercredi 20 décembre 2006 Statut Membre Dernière intervention 24 novembre 2010 - 20 déc. 2006 à 13:20
 Trezeg - 21 déc. 2006 à 10:10
Bonjour,
J'aimerais découper une date sous unix (config SunOS 5.9) et mettre le contenu des trois éléments dans 3 variables (en shell script bien entendu). Je sais que cut -d suivi d'un caractère permet de definir un delimitateur. J'ai pu (difficilement) développer un truc en batch script et ca donne :

for /F "delims=. tokens=3" %%i in ('date /T') do for /F "delims= " %%i in ('echo %%i-') do set vYYYY=%%i
for /F "delims=. tokens=2" %%i in ('date /T') do set vMM=%%i
for /F "delims=. tokens=1" %%i in ('date /T') do set vDD=%%i
set vDate=%vYYYY%%vMM%%vDD%000000

Le problème est que je découvre le shell script (bien que ressemblant au batch scipt) et que la commande date donne ceci:
$ date
Wed Dec 20 13:16:38 CET 2006
et non pas 20.12.2006 comme c'est le cas en Dos.

Merci pour vos conseils.
A voir également:

4 réponses

jisisv Messages postés 3645 Date d'inscription dimanche 18 mars 2001 Statut Modérateur Dernière intervention 15 janvier 2017 934
20 déc. 2006 à 16:14
Ceci devrait faire ton bonheur (man date)
[johand@horus]~/tmp $YEAR=$(date +%Y); MONTH=$(date +%m); DAY=$(date +%d)
[johand@horus]~/tmp $echo "$DAY/$MONTH/$YEAR"
20/12/2006
Bon je n'ai pas de SunOS sous la main (le bourrin...sous i386)
Johan
0
Trezeg Messages postés 73 Date d'inscription mercredi 20 décembre 2006 Statut Membre Dernière intervention 24 novembre 2010 2
20 déc. 2006 à 17:30
Salut,
Ca marche nikel sous Sun ;) Par contre j'aimerais obtenir le meme resultat mais avec l'affichage suivant :
20061220 et non 061220 comme c'est le cas sur ta solution (merci ;)).
Trez
0
jipicy Messages postés 40842 Date d'inscription jeudi 28 août 2003 Statut Modérateur Dernière intervention 10 août 2020 4 895
20 déc. 2006 à 18:22
Salut,

Ben suffit d'inverser l'ordre et de ne pas mettre de slash :
$YEAR=$(date +%Y); MONTH=$(date +%m); DAY=$(date +%d)
echo "$YEAR$MONTH$DAY"
;-))
0
jipicy Messages postés 40842 Date d'inscription jeudi 28 août 2003 Statut Modérateur Dernière intervention 10 août 2020 4 895
20 déc. 2006 à 20:43
Et puis pourquoi pas tout simplement :
date +%Y%m%d
;-)
0
Merci ;))
0