otro - ¿Por qué ksh permite citas sin parear mientras que bash no?
if linux ejemplos (1)
En el shell Korn, tanto los ticks traseros como las comillas se pueden dejar sin igual, el tokenizer intentará adivinar dónde terminará cada uno y los unirá en consecuencia.
Ejemplos:
/home/ufierro # echo "`echo ah"
+ echo ah
+ echo ah
ah
/home/ufierro # echo `echo ''hello world`
+ echo ''hello world''
+ echo hello world
hello world
Observe cómo ambos ejemplos muestran un caso diferente para el comportamiento mencionado anteriormente. El primer ejemplo muestra cómo, se completó una sola marca de retroceso dentro de comillas dobles durante el análisis sintáctico y el segundo ejemplo muestra cómo se completó también una comilla simple dentro de las marcas de retroceso.
Cuando ejecuto el siguiente comando, en bash shell obtengo un error, pero en el shell Korn funciona perfectamente bien. La única diferencia es que falta una comilla simple al final de awk, después de}. ¿Podrías ayudarme a entender por qué?
echo `echo "a b c d" | awk ''{ print $1 }`