Linux/Unix Shell Scripting - Concatenar dos variables en bash

 
Vista:

Concatenar dos variables en bash

Publicado por Spra (2 intervenciones) el 08/02/2017 20:21:49
Hola, no se que pasa que esto no funciona, he probado en una Raspberry con O.S. Raspbian-Jessie y en Lubuntu 16.04 y nada.
1
2
3
4
5
6
#!/bin/bash
#
a="a"
b="b"
c="${a}${b}"
echo $c

Y el resultado es siempre la ultima variable de la concatenación, en este caso:
1
b

1
2
3
4
5
6
#!/bin/bash
#
a="a"
b="b"
c="$b_$a"
echo $c

En este caso el resultado:

1
_a

Esto antiguamente funcionaba ya que lo utilizé mas de una vez, pero ahora no hay manera de que funcione.

Podria alguien echarme un cable con esto?

Un saludo
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

Concatenar dos variables en bash

Publicado por Tom (361 intervenciones) el 08/02/2017 21:26:20
Es extraño.
Tu primer ejemplo me funciona bien (con bash 4.4.5 en slackware), aunque el segundo no (pero es normal porque '_' es válido en nombres de variables).

1
2
3
4
5
6
7
8
9
10
11
a="a"
b="b"
c="${a}${b}"
 
echo $c
 
a="a"
b="b"
c="${b}_$a"
 
echo $c
produce:
ab
b_a

Quizás se te haya colado algún carácter especial en tu primer ejemplo ...
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
1
Comentar

Concatenar dos variables en bash

Publicado por Spra (2 intervenciones) el 08/02/2017 22:19:19
Bien ya he localizado lo que fallaba. Estaba utilizando LeafPad y no se lo que pasa que debe meter algun caracter raro que no hay manera de que funcione, ahora que has comentado lo del carácter raro, me di cuenta y he utlizado nano y ya va perfecto.

Gracias y un saludo
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
1
Comentar