Necesito procesar las dependencias de bibliotecas compartidas de una biblioteca desde un script bash. El comando procesos for
palabra por palabra:¿Cómo se procesa la salida de un comando en el shell línea por línea?
for DEPENDENCY in `otool -L MyApplication | sed 1d`
do
...
done
¿Cuál es la manera de procesar los resultados de la línea por línea?
Advertencia: si usted necesita para establecer las variables en el bucle while (es decir, almacenar lo que ha encontrado en la producción de otool), van a desaparecer tan pronto como el bucle termina porque es parte de una tubería y, por lo tanto, se ejecuta en una subcapa. En bash, puede evitar esto con un poco de reorganización: 'mientras leí i; do ... done <<(otool -L MyApplication | sed 1d) ' –
Otra advertencia: Esto eliminará una gran cantidad de espacios y barras diagonales inversas. Use 'read -r i' para leer líneas sin tales modificaciones. – Jens
@Jens, no, es el comando echo que come espacios. la línea 'echo ': $ i" 'evitará eso. –