# KSH / BASH (fonction Date)

**URL:** <https://www.debian-fr.org/t/ksh-bash-fonction-date/56627>\
**Category:** Programmation\
**Created:** [Février 21, 2016, 2:12 UTC](https://www.debian-fr.org/t/ksh-bash-fonction-date/56627 "2016-02-21T14:12:16Z")\
**Posts on this page:** 7\
**Page:** 1

<div class="post-metadata">

**Author:** ![debianhadic](https://www.debian-fr.org/user_avatar/www.debian-fr.org/debianhadic/32/3870_2.png) [@debianhadic](https://www.debian-fr.org/u/debianhadic)\
**Post date:** [Février 21, 2016, 2:12 UTC](https://www.debian-fr.org/t/ksh-bash-fonction-date/56627/1 "2016-02-21T14:12:16Z")

</div>

Bonjour,  
J’ai une application Java qui exécute un package Oracle, et dans ce package Oracle exécute un script sur le serveur.  
Tout se passe relativement bien sauf que le script doit généré un fichier log, et dans ce fichier log il devrait y avoir la date sous cette forme :

```auto
date +%d.%m.%y\ %T
```

Quand j’exécute cette commande sous le compte Unix Oracle, j’ai bien le résultat, mais quand Oracle exécute le script la commande ne renvoie rien.  
En étudiant la configuration je voie que le script est de type :

```auto
#!/bin/ksh
```

or mon user Oracle utilise :

```auto
SHELL=/bin/bash
```

Est-ce que cette différence pourrait être à l’origine du problème ?

---

<div class="post-metadata">

**Author:** ![thuban](https://www.debian-fr.org/user_avatar/www.debian-fr.org/thuban/32/4177_2.png) [@thuban](https://www.debian-fr.org/u/thuban)\
**Post date:** [Février 21, 2016, 2:12 UTC](https://www.debian-fr.org/t/ksh-bash-fonction-date/56627/2 "2016-02-21T14:12:16Z")

</div>

`$whereis date
date: /bin/date /usr/share/man/man1/date.1.gz
`  
Donc je pense que non. date est un binaire, pas une fonction du shell.

---

<div class="post-metadata">

**Author:** ![Mimoza](https://www.debian-fr.org/user_avatar/www.debian-fr.org/mimoza/32/3858_2.png) [@Mimoza](https://www.debian-fr.org/u/Mimoza)\
**Post date:** [Février 21, 2016, 2:12 UTC](https://www.debian-fr.org/t/ksh-bash-fonction-date/56627/3 "2016-02-21T14:12:35Z")

</div>

Montre nous le bout de script, mais j’ai le présentiment que tu as oublier les ``

---

<div class="post-metadata">

**Author:** ![fran.b](https://www.debian-fr.org/letter_avatar_proxy/v4/letter/f/d78d45/32.png) [@fran.b](https://www.debian-fr.org/u/fran.b)\
**Post date:** [Février 21, 2016, 2:12 UTC](https://www.debian-fr.org/t/ksh-bash-fonction-date/56627/4 "2016-02-21T14:12:37Z")

</div>

On peut commencer par les choses simples, tu as pensé au PATH? Change le date en /bin/date ppeut être

---

<div class="post-metadata">

**Author:** ![PengouinPdt](https://www.debian-fr.org/user_avatar/www.debian-fr.org/pengouinpdt/32/3978_2.png) [@PengouinPdt](https://www.debian-fr.org/u/PengouinPdt)\
**Post date:** [Février 21, 2016, 2:13 UTC](https://www.debian-fr.org/t/ksh-bash-fonction-date/56627/5 "2016-02-21T14:13:41Z")

</div>

Très simplement :

```auto
date=$(which date)
```

Mais, je peux me tromper … non ?

---

<div class="post-metadata">

**Author:** ![debianhadic](https://www.debian-fr.org/user_avatar/www.debian-fr.org/debianhadic/32/3870_2.png) [@debianhadic](https://www.debian-fr.org/u/debianhadic)\
**Post date:** [Février 21, 2016, 2:22 UTC](https://www.debian-fr.org/t/ksh-bash-fonction-date/56627/6 "2016-02-21T14:22:51Z")

</div>

@fran @penguin ==\> Vous avez presque raison tous les deux.  
En fait quand je me loggue en tant que Oracle en faisant “su oracle” je vois bien mes $ENV et “date” fonctionne, mais … Parceque’il y a un mais, par le plus grand des hasards, l’autre jour j’ai ajouté le ‘-’ (su - oracle) (j’ai jamais bien compris la différence, ça doit être au niveau de .profil …) et alors je me suis rendu compte que je n’avais plus les mêmes variables d’environnement …  
Finalement, c’était bien un problème de $ENV quand Oracle exécute une commande SHELL en directe (sans préparation de console OUTPUT) il n’a aucune $ENV donc pas de $PATH … le chien.  
Du coup un p’tit /usr/bin devant date et maintenant mon log à le choix dans la date.

---

<div class="post-metadata">

**Author:** ![fran.b](https://www.debian-fr.org/letter_avatar_proxy/v4/letter/f/d78d45/32.png) [@fran.b](https://www.debian-fr.org/u/fran.b)\
**Post date:** [Février 21, 2016, 2:22 UTC](https://www.debian-fr.org/t/ksh-bash-fonction-date/56627/7 "2016-02-21T14:22:55Z")

</div>

`$ type date
date est /bin/date
`/usr/bin? T’es sûr?
