GNU/Linux >> Tutoriales Linux >  >> Linux

¿Qué significa Ampersand al final de una línea de script de Shell?

sh sys-snap.sh &

¿Qué es sh? ?
¿Qué es sys-snap.sh? ?
¿Por qué debería poner & al final de la línea?
¿Alguien puede explicar la sintaxis?

Sin el & el script no volverá al mensaje hasta que presione Ctrl +C .
Con & Puedo presionar enter y funciona.

Respuesta aceptada:

sh es el shell predeterminado compatible con Bourne (generalmente bash o dash)

sys-snap.sh es un script de shell, que contiene comandos que sh se ejecuta.
Como no publica su contenido, solo puedo adivinar por su nombre, lo que hace.
Puedo encontrar un script relacionado con CPanel con el mismo nombre de archivo, que crea un archivo de registro con todos los procesos actuales, el uso actual de la memoria, el estado de la base de datos, etc.
Si el script comienza con una línea shebang (#!/bin/sh o similar), puede hacerlo ejecutable con chmod +x sys-snap.sh e inícielo directamente usando ./sys-snap.sh si está en el directorio actual.

Con & el proceso comienza en segundo plano, por lo que puede continuar usando el shell y no tiene que esperar hasta que finalice el script.
Si lo olvida, puede detener el proceso en ejecución actual con Ctrl-Z y continuarlo en segundo plano con bg (o en primer plano con fg ).
Para obtener más información, consulte control de trabajos


Linux
  1. ¿Qué significa `:-` en un script de Shell?

  2. ¿Qué significa en la salida de Ps?

  3. ¿Qué significa &al final de un comando de Linux?

  4. ¿Cuál es la diferencia entre nohup y ampersand?

  5. ¿Qué significa set -e en un script bash?

¿Qué significa ser "sh compatible"?

¿Qué significa el 'rc' en '.bashrc', etc.?

¿Qué significa el último - (guión) en las opciones de `bash`?

¿Cuál es el significado de 1 al final del script awk?

¿Qué significa la capacidad ep?

¿Qué significa el sufijo .d en Linux?