Unix ksh - actual = date +%m%y (string vide)

Fermé
zulul Messages postés 22 Date d'inscription samedi 29 janvier 2005 Statut Membre Dernière intervention 4 juin 2007 - 31 oct. 2006 à 09:32
jipicy Messages postés 40842 Date d'inscription jeudi 28 août 2003 Statut Modérateur Dernière intervention 10 août 2020 - 31 oct. 2006 à 10:25
hello,

J'essaye d'inputer la date une variable sans succès dans un script sh...

aussi bien avec

date +%m%y > date
set actual = `cat date`
echo $date


que

set date = `date +%m%y"
echo $date


Il me retourne une chaine vide à l'execution du script, alors qu'en ligne de commande directe, j'obtiens le string.

Quel peut-être le problème ?

Configuration: UNIX - AIX - sh / ksh

1 réponse

jipicy Messages postés 40842 Date d'inscription jeudi 28 août 2003 Statut Modérateur Dernière intervention 10 août 2020 4 897
31 oct. 2006 à 10:25
Salut,

Alors pour commencer il ne faut pas d'espaces autour du signe égale :
var="bonjour"
Ensuite, dans ton 1er exemple "echo $actual" serait plus juste et non pas "echo $date" (c'est "actual" la variable, "date" est un fichier dans ton exemple...)

Et dans ton second exemple, ormis les espaces qui sont à prescrire, il manque une quote inverse pour terminer l'expression (d'ailleurs il manque aussi une quote double), mais tu devrais préférer cette écriture :
var=$(date +%m%y)
à :
var=`date +%m%y`
;-))
1