GNU/Linux >> Linux Esercitazione >  >> Linux

Comandi Pushd e Popd in Linux

pushd e popd sono comandi che consentono di lavorare con lo stack di directory e modificare la directory di lavoro corrente in Linux e altri sistemi operativi simili a Unix. Sebbene pushd e popd sono comandi molto potenti e utili, sono sottovalutati e usati raramente.

In questo tutorial, ti mostreremo come utilizzare il pushd e popd comandi per navigare nell'albero delle directory del tuo sistema.

Stack di directory #

Lo stack di directory è un elenco di directory in cui sei passato in precedenza. Il contenuto dello stack di directory può essere visualizzato usando le dirs comando. Le directory vengono aggiunte allo stack quando si passa a una directory utilizzando pushd comando e rimosso con il popd comando.

La directory di lavoro corrente è sempre in cima allo stack di directory. La directory di lavoro corrente è la directory (cartella) in cui l'utente sta attualmente lavorando. Ogni volta che interagisci con la riga di comando, stai lavorando all'interno di una directory.

Il pwd comando ti consente di scoprire in quale directory ti trovi attualmente.

Durante la navigazione nel file system, utilizzare la Tab chiave per completare automaticamente i nomi delle directory. L'aggiunta di una barra alla fine del nome della directory è facoltativa.

pushd , popd e dirs sono incorporati nella shell e il suo comportamento può differire leggermente da shell a shell. Tratteremo la versione incorporata di Bash dei comandi.

pushd Comando #

La sintassi per pushd il comando è il seguente:

pushd [OPTIONS] [DIRECTORY]

Ad esempio, per salvare la directory corrente in cima allo stack di directory e cambiarla in /var/www dovresti digitare:

~$ pushd /var/www

In caso di successo, il comando precedente stamperà lo stack di directory. ~ è la directory in cui abbiamo eseguito il pushd comando. Il simbolo della tilde ~ significa directory home.

/var/www ~

pushd prima salva la directory di lavoro corrente in cima allo stack e quindi passa alla directory specificata. Poiché la directory corrente deve essere sempre in cima allo stack, una volta modificata la nuova directory corrente va in cima allo stack ma non viene salvata nello stack. Per salvarlo devi invocare pushd da. Se usi cd per passare a un'altra directory, l'elemento in cima allo stack andrà perso,

Aggiungiamo un'altra directory allo stack:

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

Per evitare di modificare la directory, usa il -n opzione. Ad esempio, per aggiungere il /usr/local directory nello stack ma senza cambiarlo, dovresti digitare:

/opt$ pushd -n /usr/local

Poiché la directory corrente (che è sempre in alto) non viene modificata, il /usr/local la directory viene aggiunta per seconda dalla cima dello stack:

/opt /usr/local /var/www ~

Il pushd accetta due opzioni, +N e -N che ti permette di navigare fino a Nth directory della pila. Il +N l'opzione cambia in Nth elemento dell'elenco dello stack che conta da sinistra a destra a partire da zero. Quando -N viene utilizzata la direzione del conteggio da destra a sinistra.

Per illustrare meglio le opzioni, stampiamo lo stack di directory corrente:

/opt$ dirs -l -v

L'output mostrerà un elenco indicizzato dello stack di directory:

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

Se vuoi passare a /var/www directory e portalo in cima allo stack utilizzerai uno dei seguenti.

Quando si conta dall'alto verso il basso (o da sinistra a destra), l'indice della directory è 2 .

pushd +2

Quando si conteggia dal basso verso l'alto l'indice del /var/www la directory è 1 .

pushd -1.

Se utilizzato senza alcun argomento, pushd alternerà le prime due directory e renderà la nuova top la directory corrente. È lo stesso di quando si utilizza il cd - comando.

popd Comando #

Il popd il comando assume la forma:

popd [OPTIONS]

Se utilizzato senza argomenti, popd rimuove la directory principale dallo stack e passa alla nuova directory principale.

Supponiamo di avere il seguente stack di directory:

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

Se esegui popd comando rimuoverà il /opt dallo stack e cambia in /usr/local directory:

/opt$ popd

L'output mostrerà il nuovo stack di directory:

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

Il -n l'opzione sopprime la modifica della directory predefinita e rimuove il secondo elemento dallo stack:

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

Come pushd , popd accetta anche il +N e -N opzioni che possono essere utilizzate per rimuovere il Nth directory dello stack.

/opt$ popd +1
/usr/local ~

Conclusione #

Normalmente, useresti il ​​cd comando per spostarsi da una directory all'altra. Tuttavia, se trascorri molto tempo sulla riga di comando, pushd e popd i comandi aumenteranno la tua produttività ed efficienza.

Se hai domande o feedback, sentiti libero di lasciare un commento.


Linux
  1. Navigazione nella shell Bash con pushd e popd

  2. Come disabilitare i comandi di spegnimento e riavvio in Linux

  3. Usa "pushd" e "popd" per una navigazione efficiente del filesystem in Linux

  4. Differenza tra i comandi 'ifconfig' e 'ip'

  5. Posso chiamare pushd/popd e impedire che stampi lo stack?

Tutorial sui comandi pushd e popd di Linux per principianti (3 esempi)

Come utilizzare i comandi Pushd, Popd e Dirs per una navigazione CLI più veloce

Come utilizzare i comandi Pbcopy e Pbpaste su Linux

I 30 migliori comandi Linux

Comandi della directory Linux:una guida completa

Linux / Cartella e cartella /root