pas de saut de ligne dans le cadre d'echo/printf dans BASH boucle while
pourquoi sur l'exécution de script suivant chaque printf (essayé aussi avec de l'écho) est imprimé sur la même ligne??
function read_dom () {
local IFS=\>
read -d \< ENTITY CONTENT
}
cat my_xml_file.xml | \
{ while read_dom; do
printf "(entity:content %s:%s)" $ENTITY $CONTENT
}
Maintenant, ce qui produit une seule ligne de sortie:
(entity:content member:)(entity:content name:id)(entity:content /name:)
Comment puis-je changer cette multiligne, comme:
(entity:content member:)
(entity:content name:id)
(entity:content /name:)
printf
n'est pasecho
. Vous avez besoin\n
.printf "(entity:content %s:%s)\n" $ENTITY $CONTENT
Vous devez vous connecter pour publier un commentaire.
Vous aurez juste besoin d'ajouter le caractère de saut de ligne,
\n
, à laprintf
déclaration:printf
ne pas ajouter un saut de ligne comme norme de comportement, vous devez l'ajouter à votre chaîne d'impression: