L' &operatore invia un processo in background; come cdpuò essere eseguito senza argomenti lo stai eseguendo e inviandolo in background. Se prendi la pagina man:
NOME
cd - Cambia la directory di lavoro della shell.
SINOSSI
cd[ -L| -P] [ dir ]
DESCRIZIONE
Cambia la directory di lavoro della shell.
Cambia la directory corrente in DIR . Il DIR predefinito è il valore della HOMEvariabile shell.
La variabile CDPATHdefinisce il percorso di ricerca per la directory contenente
DIR . I nomi di directory alternativi in CDPATHsono separati da due punti (:).
Un nome di directory null è uguale alla directory corrente. Se DIR inizia con una barra ( /), CDPATHnon viene utilizzato.
Se la directory non viene trovata e l'opzione shell cdable_varsè impostata, si presume che la parola sia un nome variabile. Se quella variabile ha un valore, il suo valore viene utilizzato per DIR .
Opzioni:
-Lforzare i collegamenti simbolici da seguire
-Putilizzare la struttura di directory fisica senza seguire i collegamenti simbolici
L'impostazione predefinita è seguire i collegamenti simbolici, come se -Lfossero stati specificati.
Stato di uscita:
Restituisce 0 se la directory viene modificata; diverso da zero altrimenti.
GUARDA ANCHE
bash(1)
IMPLEMENTAZIONE
GNU bash, versione 4.1.5 (1) -release (i486-pc-linux-gnu)
Copyright (C) 2009 Free Software Foundation, Inc.
Licenza GPLv3 +: GNU GPL versione 3 o successiva
Puoi vedere gli argomenti sono opzionali. Così
cd &viene elaborato come
cde quindi inviato in background. Quando cdviene chiamato senza argomento non è necessaria alcuna elaborazione. Quindi va in background come "fatto" (elaborato).
Alcune informazioni su &
The Bash &(e commerciale) è un operatore di controllo integrato utilizzato per fork i processi. Dalla pagina man di Bash, "Se un comando viene terminato dall'operatore di controllo &, la shell esegue il comando in background in una subshell".
Se si accede a una shell interattiva, al processo viene assegnato un numero di lavoro e viene visualizzato il PID figlio. Il numero di lavoro di seguito è uno.
bash$ sleep 30 &
[1] 3586
Si noti che quando un processo viene biforcato, il PID figlio viene archiviato nella variabile speciale $!
bash$ echo $!
3586
È possibile terminare il lavoro in base al suo numero di lavoro in questo modo:
bash$ jobs
[1]+ Running sleep 30 &
bash$ kill %1
[1]+ Terminated sleep 30
bash$