GNU/Linux >> Tutoriels Linux >  >> Linux

Commandes Pushd et Popd sous Linux

pushd et popd sont des commandes qui vous permettent de travailler avec la pile de répertoires et de modifier le répertoire de travail actuel sous Linux et d'autres systèmes d'exploitation de type Unix. Bien que pushd et popd sont des commandes très puissantes et utiles, elles sont sous-estimées et rarement utilisées.

Dans ce tutoriel, nous allons vous montrer comment utiliser le pushd et popd commandes pour naviguer dans l'arborescence des répertoires de votre système.

Pile de répertoire #

La pile de répertoires est une liste de répertoires dans lesquels vous avez précédemment navigué. Le contenu de la pile de répertoires peut être vu en utilisant le dirs commande. Les répertoires sont ajoutés à la pile lors du passage à un répertoire à l'aide de pushd commande et supprimé avec le popd commande.

Le répertoire de travail actuel est toujours au sommet de la pile de répertoires. Le répertoire de travail actuel est le répertoire (dossier) dans lequel l'utilisateur travaille actuellement. Chaque fois que vous interagissez avec la ligne de commande, vous travaillez dans un répertoire.

Le pwd La commande vous permet de savoir dans quel répertoire vous vous trouvez actuellement.

Lorsque vous naviguez dans le système de fichiers, utilisez l'Tab clé pour compléter automatiquement les noms des répertoires. L'ajout d'une barre oblique à la fin du nom du répertoire est facultatif.

pushd , popd et dirs sont des commandes internes du shell, et son comportement peut légèrement différer d'un shell à l'autre. Nous couvrirons la version intégrée Bash des commandes.

pushd Commande #

La syntaxe du pushd commande est la suivante :

pushd [OPTIONS] [DIRECTORY]

Par exemple, pour enregistrer le répertoire actuel en haut de la pile de répertoires et passer à /var/www vous taperiez :

~$ pushd /var/www

En cas de succès, la commande ci-dessus imprimera la pile de répertoires. ~ est le répertoire dans lequel nous avons exécuté le pushd commande. Le symbole tilde ~ signifie répertoire personnel.

/var/www ~

pushd enregistre d'abord le répertoire de travail actuel en haut de la pile, puis navigue vers le répertoire donné. Comme le répertoire courant doit toujours être en haut de la pile, une fois modifié, le nouveau répertoire courant va en haut de la pile mais il n'est pas enregistré dans la pile. Pour l'enregistrer, vous devez invoquer pushd à partir de cela. Si vous utilisez cd pour changer de répertoire, l'élément du haut de la pile sera perdu,

Ajoutons un autre répertoire à la pile :

/var/www$ pushd /opt
/opt /var/www ~

Pour supprimer le changement de répertoire, utilisez le -n option. Par exemple, pour ajouter le /usr/local répertoire à la pile mais sans y changer, vous taperiez :

/opt$ pushd -n /usr/local

Comme le répertoire courant (qui est toujours en haut) n'est pas modifié, le /usr/local répertoire est ajouté en deuxième à partir du haut de la pile :

/opt /usr/local /var/www ~

Le pushd accepte deux options, +N et -N qui vous permet de naviguer vers Nth répertoire de la pile. Le +N l'option passe à Nth élément de la liste de pile comptant de gauche à droite en commençant par zéro. Lorsque -N est utilisé le sens du décompte est de droite à gauche.

Pour mieux illustrer les options, imprimons la pile de répertoires actuelle :

/opt$ dirs -l -v

La sortie affichera une liste indexée de la pile de répertoire :

 0  /opt
 1  /usr/local
 2  /var/www
 3  /home/linuxize

Si vous voulez changer pour le /var/www répertoire et amenez-le au sommet de la pile, vous utiliserez l'un des éléments suivants.

En comptant de haut en bas (ou de gauche à droite), l'index du répertoire est 2 .

pushd +2

En comptant de bas en haut l'index du /var/www répertoire est 1 .

pushd -1.

Lorsqu'il est utilisé sans aucun argument, pushd basculera les deux répertoires supérieurs et fera du nouveau répertoire supérieur le répertoire actuel. C'est la même chose que lors de l'utilisation du cd - commande.

popd Commande #

Le popd commande prend la forme :

popd [OPTIONS]

Lorsqu'il est utilisé sans argument, popd supprime le répertoire supérieur de la pile et navigue vers le nouveau répertoire supérieur.

Disons que nous avons la pile de répertoires suivante :

/opt /usr/local /var/www /etc/nginx ~

Si vous exécutez le popd commande, il supprimera le /opt de la pile et changez pour /usr/local répertoire :

/opt$ popd

La sortie affichera la nouvelle pile de répertoire :

/usr/local /var/www /etc/nginx ~

Le -n l'option supprime le changement de répertoire par défaut et supprime le deuxième élément de la pile :

/opt$ popd -n
/usr/local /etc/nginx ~

Identique à pushd , popd accepte aussi le +N et -N options qui peuvent être utilisées pour supprimer le Nth répertoire de la pile.

/opt$ popd +1
/usr/local ~

Conclusion #

Normalement, vous utiliseriez le cd commande pour passer d'un répertoire à un autre. Cependant, si vous passez beaucoup de temps sur la ligne de commande, pushd et popd augmenteront votre productivité et votre efficacité.

Si vous avez des questions ou des commentaires, n'hésitez pas à laisser un commentaire.


Linux
  1. Comment désactiver les commandes d'arrêt et de redémarrage sous Linux

  2. Utilisez 'pushd' et 'popd' pour une navigation efficace dans le système de fichiers sous Linux

  3. Apprenez la différence entre les commandes "su" et "su -" sous Linux

  4. Conseils de navigation en ligne de commande Linux :les bases des commandes pushd et popd

  5. Commandes Linux :jobs, bg et fg

Tutoriel sur les commandes Linux pushd et popd pour les débutants (3 exemples)

Comment utiliser les commandes Pushd, Popd et Dirs pour une navigation CLI plus rapide

Comment utiliser les commandes Pbcopy et Pbpaste sous Linux

Top 30 des commandes Linux

Commandes du répertoire Linux :un guide complet

Linux / Dossier et dossier /racine