Réaliser des sauts de ligne avec une fonction bash

Résolu
xunil2003 Messages postés 766 Date d'inscription   Statut Membre Dernière intervention   -  
xunil2003 Messages postés 766 Date d'inscription   Statut Membre Dernière intervention   -
Bonjour,

J'ai petit problème, je n'arrive pas à réaliser des sauts de ligne avec une fonction bash ?

Depuis le shell, les sauts de ligne fonctionne.

laurent@laurent-Bureau:~$ echo -e "tatata\ntatata\ntatata"
tatata
tatata
tatata
laurent@laurent-Bureau:~$


Mais avec une fonction ça marche pas ?
<code>exemple _source ()
{
echo -e "tatata\ntatata\ntatata"
}
echo $(exemple _source)
exit 0

Il m'affiche :
laurent@laurent-Bureau:~$ test.sh
tatata tatata tatata
laurent@laurent-Bureau:~$ echo -e "tatata\ntatata\ntatata"
J'ai aussi essayé avec
printf "%b\n" 'tatata\ntatata\ntatata'
mais c'est pareil ça marche pas.

Comment dois-je faire avec une fonction bash pour faire les sauts de ligne ?

Merci.

4 réponses

  1. Utilisateur anonyme
     
    salut,

    Mets des guillemets, autour des variables, et des substitutions de commandes!

    et,
    source
    est une commande
    bash
    , qui ne devrait pas être utilisée comme nom de fonction.
    0
  2. xunil2003 Messages postés 766 Date d'inscription   Statut Membre Dernière intervention   14
     
    Bonsoir,

    La fonction est déclaré sous le non :
    exemple _source
    que j'ai modifier,
    mais même avec ce nom, ça marche pas.

    Merci.
    0
  3. xunil2003 Messages postés 766 Date d'inscription   Statut Membre Dernière intervention   14
     
    Bonsoir,

    Avec :
    exemple_source ()
    {
    echo -e "tatata\ntatata\ntatata"
    }
    echo $(exemple_source)
    exit 0

    Il me retourne :
    laurent@laurent-Bureau:~$ test.sh
    tatata tatata tatata
    laurent@laurent-Bureau:~$ echo -e "tatata\ntatata\ntatata"
    ça marche pas pas non plus.

    Merci.
    0
    1. Utilisateur anonyme
       
      METS DES GUILLEMETS, AUTOUR DES VARIABLES, ET DES SUBSTITUTIONS DE COMMANDES !
      0
  4. xunil2003 Messages postés 766 Date d'inscription   Statut Membre Dernière intervention   14
     
    Bonsoir,

    Ok, ça marche .

    Avec :
    exemple_source ()
    {
    echo -e "tatata\ntatata\ntatata"
    }
    echo "$(exemple_source)"
    exit 0

    Il me retourne :
    laurent@laurent-Bureau:~$ test.sh
    tatata
    tatata
    tatata
    laurent@laurent-Bureau:~$ echo -e "tatata\ntatata\ntatata"

    Merci.
    0