GNU/Linux >> Linux Esercitazione >  >> Linux

Cosa significa e commerciale alla fine di una riga di script di shell?

sh sys-snap.sh &

Che cos'è sh ?
Che cos'è sys-snap.sh ?
Perché dovrei inserire & alla fine della riga?
Qualcuno può spiegare la sintassi?

Senza il & lo script non tornerà al prompt finché non premo Ctrl +C .
Con & Posso premere invio e funziona.

Risposta accettata:

sh è la shell predefinita compatibile con Bourne (solitamente bash o dash)

sys-snap.sh è uno script di shell, che contiene comandi che sh esegue.
Poiché non pubblichi il suo contenuto, posso solo indovinare dal suo nome, cosa fa.
Posso trovare uno script relativo a CPanel con lo stesso nome di file, che crea un file di registro con tutti i processi correnti, l'utilizzo corrente della memoria, lo stato del database ecc.
Se lo script inizia con una riga shebang (#!/bin/sh o simili), puoi renderlo eseguibile con chmod +x sys-snap.sh e avvialo direttamente usando ./sys-snap.sh se è nella directory corrente.

Con & il processo inizia in background, quindi puoi continuare a usare la shell e non devi aspettare fino al termine dello script.
Se lo dimentichi, puoi interrompere il processo in esecuzione con Ctrl-Z e continua in background con bg (o in primo piano con fg ).
Per ulteriori informazioni, vedere controllo lavori


Linux
  1. Cosa significa la Tilde (~) alla fine di un nome file??

  2. A che scopo serve il Colon Builtin ':'?

  3. Qual è la differenza tra nohup e e commerciale

  4. Cosa fa questo script bash? [Tentativo di hackeraggio]

  5. Cosa significa l'ultimo - (trattino) nelle opzioni di `bash`?

Cosa significa essere "sh compatibile"?

Cosa significa set -e in uno script bash?

Cosa significa la sintassi |&nel linguaggio della shell?

Cosa significa il simbolo di una freccia (->) sulla riga di comando?

Cosa significa 'rc' in `.bashrc`, ecc.?

Cosa significa un + alla fine dei permessi da ls -l?