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

zulul Messages postés 22 Date d'inscription   Statut Membre -  
jipicy Messages postés 40842 Date d'inscription   Statut Modérateur Dernière intervention   -
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

  1. jipicy Messages postés 40842 Date d'inscription   Statut Modérateur Dernière intervention   4 898
     
    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