Cuando trato de utilizar el comando read
en Bash así:¿Cómo usar el comando de lectura en Bash?
echo hello | read str
echo $str
Nada se hizo eco, mientras pienso str
debe contener la cadena hello
. ¿Alguien puede ayudarme a entender este comportamiento?
¡Ejemplos impresionantes! Tuve que modificarlo ligeramente en OSX poniendo espacios dentro de las llaves, y un punto y coma después del eco, así: str = $ (ls | {read a; read a; echo $ a;}) –
¿Por qué? es "read a; read a;" requerido * dos veces *? – javadba
@javadba: No se requiere dos veces. El ejemplo dado devuelve el * segundo * elemento de 'ls'. Con un solo 'leer un 'obtendría el primer artículo. No me preguntes por qué el que responde eligió este ejemplo. – Fritz