Contenu | Rechercher | Menus

Annonce

Si vous avez des soucis pour rester connecté, déconnectez-vous puis reconnectez-vous depuis ce lien en cochant la case
Me connecter automatiquement lors de mes prochaines visites.

À propos de l'équipe du forum.

#1 Le 12/01/2013, à 23:15

weezixx

[Résolu] Cowsay pas ce que je veux …

Bonjour,

ayant envie d'égayer un peu mon shell j'ai installé "cowsay".

J'ai voulu mettre ce ASCII art :

##
## follow the white rabbit
##
$the_cow = <<EOC;
   $thoughts
    $thoughts
                       :oooo
                       YAAAAAAs_
               'AA.    ' AAAAAAAAs
                !AAAA_   ' AAAAAAAAs
                  VAAAAA_.   AAAAAAAAs
                   !AAAAAAAA_  AAAAAAAb
                     VVAAAAAAA\/VAAAAAAb
                       'VVAAAAAAAXXAAAAAb
                           ~~VAAAAAAAAAABb
                                 ~~~VAAAAB__
                                   ,AAAAAAAAA_
                                 ,AAAAAAAAA(*)AA_
            _nnnnnnnnnnnnnnmmnnAAAAAAAAAAAAA8GAAAAn_
        ,AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAo
      ,AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAf~""
     ,AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA)
    iAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP
    AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
   ,AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA]
   [AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA]
   [AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
   [AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA!
    AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA~
    YAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA`
 __.'YAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA.
[AAAAA8AAAAAAAAAAAAAAAAAAAAAAAAAA~AAAAA_
(AAAAAAAAAAAAAAAAAAAAAAAAAAAAVf`   YAAAA]
 VAAAAAAAAAAAAAAAAAAAAAAAAAAA_      AAAAAAAs
   'VVVVVVVVVVVVVVVVVVVVVVVVVV+      !VVVVVVV
EOC

Mais il me retourne (terminal) toujours ça :

cowsay: Can't find string terminator "EOC" anywhere before EOF at /usr/share/cowsay/cows/follow_the_white_rabbit.cow line 4, <STDIN> line 1.

Que faire ?

Merci smile

Dernière modification par weezixx (Le 14/01/2013, à 17:05)

Hors ligne

#2 Le 13/01/2013, à 03:22

Postmortem

Re : [Résolu] Cowsay pas ce que je veux …

Salut,
À tout hasard, n'aurais-tu pas une ou des espaces sur ta dernière ligne ?
Il faut peut-etre juste le mot EOC sans rien d'autre du tout.


Mot' a dit : « Un Hellfest sans Slayer, c'est comme une galette-saucisse sans saucisse ! »

Hors ligne

#3 Le 13/01/2013, à 03:24

weezixx

Re : [Résolu] Cowsay pas ce que je veux …

Même pas …

Hors ligne

#4 Le 13/01/2013, à 08:22

tiramiseb

Re : [Résolu] Cowsay pas ce que je veux …

As-tu essayé d'ajouter une ligne vide après EOC ?

Hors ligne

#5 Le 13/01/2013, à 08:41

serged

Re : [Résolu] Cowsay pas ce que je veux …

Tu as des ` (apostrophes inverses) dans ton script. Il essaye d'exécuter ce qu'il y a entre...


LinuxMint Vera Cinnamon et d'autres machines en MATE, XFCE... 20.x , 21.x ou 19.x
Tour : Asus F2A55 / AMD A8-5600K APU 3,6GHz / RAM 16Go / Nvidia GeForce GT610 / LM21.1 Cinnamon
Portable : LDLC Mercure MH : Celeron N3450 /RAM 4Go / Intel HD graphics 500 i915 / biboot Win 10 (sur SSD) - LM21.1 MATE (sur HDD)

Hors ligne

#6 Le 13/01/2013, à 09:13

tiramiseb

Re : [Résolu] Cowsay pas ce que je veux …

serged: je suis pas spécialiste du Perl donc je sais pas trop... En Perl les " ` " ont la même signification qu'en shell ?

weezixx: j'ai installé  cowsay, j'ai copié-collé le contenu que tu as montré dans le fichier /usr/share/cowsay/cows/follow_the_white_rabbit.cow et j'ai exécuté la commande suivante :

cowsay -f follow_the_white_rabbit "hello world"

Ça a parfaitement fonctionné (même résultat avec et sans ligne vide à la fin du fichier). Es-tu sûr du contenu du fichier /usr/share/cowsay/cows/follow_the_white_rabbit.cow sur ton système ?

Hors ligne

#7 Le 13/01/2013, à 15:54

weezixx

Re : [Résolu] Cowsay pas ce que je veux …

Toujours la même réponse quand je fais ta ligne de code tiramiseb

mister_why@JARVIS:~$ cowsay -f follow_the_white_rabbit "hello world"
cowsay: Can't find string terminator "EOC" anywhere before EOF at /usr/share/cowsay/cows/follow_the_white_rabbit.cow line 4.

Hors ligne

#8 Le 13/01/2013, à 16:00

tiramiseb

Re : [Résolu] Cowsay pas ce que je veux …

Je réitère ma question :
Es-tu sûr du contenu du fichier /usr/share/cowsay/cows/follow_the_white_rabbit.cow sur ton système ?

Hors ligne

#9 Le 13/01/2013, à 16:05

Watael

Re : [Résolu] Cowsay pas ce que je veux …

salut,

le dernier EOC peut-il correspondre au premier EOC;
le point-virgule (ou son absence) peut-il avoir une influence?


Connected \o/
Welcome to sHell. · eval is evil.

Hors ligne

#10 Le 13/01/2013, à 16:06

weezixx

Re : [Résolu] Cowsay pas ce que je veux …

Je refait un copier/coller du fichier même : 

##
## follow the white rabbit
##
$the_cow = <<EOC;
   $thoughts
    $thoughts
                       :oooo
                       YAAAAAAs_
               'AA.    ' AAAAAAAAs
                !AAAA_   ' AAAAAAAAs
                  VAAAAA_.   AAAAAAAAs
                   !AAAAAAAA_  AAAAAAAb
                     VVAAAAAAA\/VAAAAAAb
                       'VVAAAAAAAXXAAAAAb
                           ~~VAAAAAAAAAABb
                                 ~~~VAAAAB__
                                   ,AAAAAAAAA_
                                 ,AAAAAAAAA(*)AA_
            _nnnnnnnnnnnnnnmmnnAAAAAAAAAAAAA8GAAAAn_
        ,AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAo
      ,AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAf~""
     ,AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA)
    iAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP
    AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
   ,AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA]
   [AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA]
   [AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
   [AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA!
    AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA~
    YAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA`
 __.'YAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA.
[AAAAA8AAAAAAAAAAAAAAAAAAAAAAAAAA~AAAAA_
(AAAAAAAAAAAAAAAAAAAAAAAAAAAAVf`   YAAAA]
 VAAAAAAAAAAAAAAAAAAAAAAAAAAA_      AAAAAAAs
   'VVVVVVVVVVVVVVVVVVVVVVVVVV+      !VVVVVVV
EOC

Hors ligne

#11 Le 13/01/2013, à 16:08

tiramiseb

Re : [Résolu] Cowsay pas ce que je veux …

Je ne sais pas quoi te dire. J'ai pris ton fichier et chez moi ça marche.

Hors ligne

#12 Le 13/01/2013, à 16:25

Watael

Re : [Résolu] Cowsay pas ce que je veux …

dans un terminal, sans les ` (comme l'a indiqué serged), je n'ai plus de message d'erreur.
le ; n'y est pour rien.


Connected \o/
Welcome to sHell. · eval is evil.

Hors ligne

#13 Le 13/01/2013, à 16:25

weezixx

Re : [Résolu] Cowsay pas ce que je veux …

Et pourtant quand j'utilise un autre fichier .cow ça fonctionne ! C'est ça le pire !

Hors ligne

#14 Le 13/01/2013, à 16:28

tiramiseb

Re : [Résolu] Cowsay pas ce que je veux …

Watael a écrit :

dans un terminal, sans les ` (comme l'a indiqué serged), je n'ai plus de message d'erreur.
le ; n'y est pour rien.


Qu'appelles-tu "dans un terminal" ?
cowsay est en Perl et ces fichiers ".cow" sont écrits en Perl.
As-tu exécuté ce fichier avec Perl ?

Hors ligne

#15 Le 13/01/2013, à 16:31

tiramiseb

Re : [Résolu] Cowsay pas ce que je veux …

weezixx: peut-être y a-t-il un caractère spécial, invisible sur le terminal, qui fait croire à ton système que c'est la fin du fichier.

Essaie de copier-coller à partir de ce forum (vu que pour moi ça marche...) dans un nouveau fichier .cow et d'utiliser cowsay avec ce nouveau fichier...

Hors ligne

#16 Le 13/01/2013, à 17:06

weezixx

Re : [Résolu] Cowsay pas ce que je veux …

Le sort s'acharne … Toujours le même : 

cowsay: Can't find string terminator "EOC" anywhere before EOF at /usr/share/cowsay/cows/rabbit.cow line 4.

Hors ligne

#17 Le 13/01/2013, à 17:20

Watael

Re : [Résolu] Cowsay pas ce que je veux …

Qu'appelles-tu "dans un terminal" ?
cowsay est en Perl et ces fichiers ".cow" sont écrits en Perl.

J'ai copié le lapin, je l'ai mis entre cat <<EOC et EOC,
et les ` font afficher un message d'erreur

bash: command substitution: ligne2: Caractère de fin de fichier (EOF) prématuré lors de la recherche du « ' » correspondant
bash: command substitution: ligne5: Erreur de syntaxe : fin de fichier prématurée

Hors, je conserve les apostrophes, j'enlève seulement les `, et il n'y a plus de message d'erreur.


Connected \o/
Welcome to sHell. · eval is evil.

Hors ligne

#18 Le 13/01/2013, à 19:41

weezixx

Re : [Résolu] Cowsay pas ce que je veux …

Je crois que ça a un rapport avec l'ASCII art car je viens d'en faire un autre et celui la fonctionne au démarrage de mon shell !

Hors ligne

#19 Le 13/01/2013, à 19:44

tiramiseb

Re : [Résolu] Cowsay pas ce que je veux …

Watael : sauf que ce que tu as fait c'est du bash, pas du perl...

Hors ligne

#20 Le 13/01/2013, à 20:27

Watael

Re : [Résolu] Cowsay pas ce que je veux …

C'est toujours, plus ou moins, un here-doc.
Et le message est très similaire.


Connected \o/
Welcome to sHell. · eval is evil.

Hors ligne

#21 Le 13/01/2013, à 20:28

tiramiseb

Re : [Résolu] Cowsay pas ce que je veux …

Pas vraiment similaire,  non...

Hors ligne