
cuando quiero retrasar la ejecución de un programa usando at
, me precisa que
warning: commands will be executed using /bin/sh
¿Cómo se cambia este shell predeterminado, por bash
ejemplo?
Respuesta1
Por favor miraestePregunta que se publicó en Unix & Linux Stack Exchange. La primera frase dice:
En Linux, at siempre le advierte que ejecutará los comandos especificados con /bin/sh, en lugar de su shell favorito. No puede suprimir este mensaje, está codificado en el código fuente.
También sugiere una solución alternativa:
El comando que pasas es interpretado por /bin/sh. Este comando puede ser la ruta a un script si lo desea; luego /bin/sh ejecutará el programa de script, lo que provocará que se inicie el intérprete del script y lo interprete. El lenguaje del script es completamente independiente del programa que lo inicia. Entonces, si, por ejemplo, desea ejecutar un script bash (es decir, un script que comienza con #!/bin/bash), simplemente pase la ruta al script a at e ignore el mensaje irrelevante.
Entonces, para ejecutar sus comandos bash
en lugar de sh
, puede pasar un script a at
. Siempre que el script tenga una línea shebang, será ejecutado por cualquier programa al que apunte el shebang. Si usa #!/bin/bash
, será ejecutado por bash
.