Estoy tratando de leer comandos de un archivo de texto y ejecutar cada línea desde un script bash.línea de ejecución del archivo en bash
#!/bin/bash
while read line; do
$line
done < "commands.txt"
En algunos casos, si $line
contiene comandos que están destinados a ejecutar en segundo plano, por ejemplo command 2>&1 &
no comenzará en el fondo, y se ejecutará en el contexto de la escritura actual.
Any ideea why?
¿Hay alguna razón por la que no pueda simplemente hacer "source commands.txt" en lugar de escribir su propio bucle? –
¿Qué hace "fuente"? Estoy intentando probarlo ahora – Quamis
Consulte [BashFAQ/050] (http://mywiki.wooledge.org/BashFAQ/050). Y luego usa 'source' (o' .') como sugiere Jim Lewis. 'source' hace más o menos lo que dice la primera oración de tu pregunta. –