[CLI Wiki] page ajoutée : shell:zsh:tips:heredoc
Une page dans votre Wiki a été ajoutée ou modifiée. Voici les détails : Date : 2007/04/29 17:18 Navigateur : Mozilla/5.0 (X11; U; Linux i686; fr; rv:1.8.1.3) Gecko/20070310 Iceweasel/2.0.0.3 (Debian-2.0.0.3-2) Adresse IP : 82.245.119.238 Nom d'hôte : lon92-7-82-245-119-238.fbx.proxad.net Ancienne révision : none Nouvelle révision : http://cli.asyd.net/home/shell/zsh/tips/heredoc Résumé : Document déplacé depuis heredoc Utilisateur : asyd ===== ZSH : Exemple d'utilisation des heredoc ====== <code> #!/bin/zsh var="Hello world" echo <<EOF \ "Greetings message : $var" EOF </code> -- Ce message a été généré par DokuWiki http://cli.asyd.net/home/
On 2007-04-29 17:18:24 +0200, noreply@asyd.net wrote:
Nouvelle révision : http://cli.asyd.net/home/shell/zsh/tips/heredoc Résumé : Document déplacé depuis heredoc Utilisateur : asyd
===== ZSH : Exemple d'utilisation des heredoc ======
<code> #!/bin/zsh
var="Hello world"
echo <<EOF \ "Greetings message : $var" EOF </code>
Le \ n'est normalement pas nécessaire, et je dirais même qu'au contraire, il ne vaut mieux pas en mettre (il pose d'ailleurs des problèmes sous bash, quand on tape cela dans un shell interactif: essayez de rappeler la commande dans l'historique, ça ne fonctionne plus). D'autre part, avec les shell POSIX, mieux vaut utiliser printf, car echo interprète des séquences d'échappement de manière non portable, alors qu'avec printf, il est possible de faire portable avec %s. -- Vincent Lefèvre <vincent@vinc17.org> - Web: <http://www.vinc17.org/> 100% accessible validated (X)HTML - Blog: <http://www.vinc17.org/blog/> Work: CR INRIA - computer arithmetic / Arenaire project (LIP, ENS-Lyon)
On dim 29 avril, Vincent Lefevre wrote:
echo <<EOF \ "Greetings message : $var" EOF </code>
Le \ n'est normalement pas nécessaire, et je dirais même qu'au contraire, il ne vaut mieux pas en mettre (il pose d'ailleurs des problèmes sous bash, quand on tape cela dans un shell interactif: essayez de rappeler la commande dans l'historique, ça ne fonctionne plus).
Ca ne fonctionne pas sans le \ chez moi -- http://asyd.net/home/ - Home Page http://guses.org/home/ - French Speaking (Open)Solaris User Group
On 2007-04-30 07:17:57 +0200, Bruno Bonfils wrote:
On dim 29 avril, Vincent Lefevre wrote:
echo <<EOF \ "Greetings message : $var" EOF </code>
Le \ n'est normalement pas nécessaire, et je dirais même qu'au contraire, il ne vaut mieux pas en mettre (il pose d'ailleurs des problèmes sous bash, quand on tape cela dans un shell interactif: essayez de rappeler la commande dans l'historique, ça ne fonctionne plus).
Ca ne fonctionne pas sans le \ chez moi
Bien sûr, c'est parce que ce n'est pas "echo" qu'il faut utiliser, mais "cat". Ce que tu vois, c'est simplement un effet secondaire. Par exemple, echo <<EOF \ foo bar EOF est équivalent à: echo <<EOF foo bar EOF et ne va qu'afficher "foo", puisque l'entrée standard est ignorée. En revanche, cat <<EOF foo bar EOF affiche bien les deux lignes, puisque "cat" prend l'entrée standard. Et il ne faut pas mettre de \, évidemment. -- Vincent Lefèvre <vincent@vinc17.org> - Web: <http://www.vinc17.org/> 100% accessible validated (X)HTML - Blog: <http://www.vinc17.org/blog/> Work: CR INRIA - computer arithmetic / Arenaire project (LIP, ENS-Lyon)
participants (3)
-
Bruno Bonfils
-
noreply@asyd.net
-
Vincent Lefevre