L' &
opérateur envoie un processus en arrière-plan; Comme vous cd
pouvez l'exécuter sans arguments, vous l'exécutez et l'envoyez en arrière-plan. Si vous prenez la page de manuel:
NOM
cd - Changer le répertoire de travail du shell.
SYNOPSIS
cd
[ -L
| -P
] [ dir ]
LA DESCRIPTION
Modifiez le répertoire de travail du shell.
Remplacez le répertoire actuel par DIR . Le DIR par défaut est la valeur de la HOME
variable shell.
La variable CDPATH
définit le chemin de recherche du répertoire contenant
DIR . Les noms de répertoire alternatifs dans CDPATH
sont séparés par deux points (:).
Un nom de répertoire nul est le même que le répertoire actuel. Si DIR commence par une barre oblique ( /
), il CDPATH
n'est pas utilisé.
Si le répertoire n'est pas trouvé et que l'option shell cdable_vars
est définie, le mot est supposé être un nom de variable. Si cette variable a une valeur, sa valeur est utilisée pour DIR .
Options:
-L
forcer les liens symboliques à être suivis
-P
utiliser la structure du répertoire physique sans suivre les liens symboliques
La valeur par défaut est de suivre les liens symboliques, comme s'ils -L
étaient spécifiés.
Statut de sortie:
Renvoie 0 si le répertoire est modifié; non nul sinon.
VOIR ÉGALEMENT
bash
(1)
LA MISE EN OEUVRE
GNU bash, version 4.1.5 (1) -release (i486-pc-linux-gnu)
Copyright (C) 2009 Free Software Foundation, Inc.
Licence GPLv3 +: GNU GPL version 3 ou ultérieure
Vous pouvez voir que les arguments sont facultatifs. Donc
cd &
est traité en tant que
cd
, puis envoyé en arrière-plan. Lorsque cd
est appelé sans argument, aucun traitement n'est nécessaire. Il passe donc en arrière-plan comme "terminé" (traité).
Quelques informations concernant &
The Bash &
(esperluette) est un opérateur de contrôle intégré utilisé pour bifurquer les processus. A partir de la page de manuel Bash, "Si une commande est interrompue par l'opérateur de contrôle &
, le shell exécute la commande en arrière-plan dans un sous-shell".
S'il est connecté à un shell interactif, le processus se voit attribuer un numéro de travail et le PID enfant s'affiche. Le numéro de travail ci-dessous est un.
bash$ sleep 30 &
[1] 3586
Notez que lorsqu'un processus est forké, le PID enfant est stocké dans la variable spéciale $!
bash$ echo $!
3586
Vous pouvez terminer le travail par son numéro de travail comme suit:
bash$ jobs
[1]+ Running sleep 30 &
bash$ kill %1
[1]+ Terminated sleep 30
bash$