Anche se ci sono già alcune buone risposte, ho pensato di menzionare per completezza i vecchi pushde popdBash incorporati che ti consentono di spostarti molto rapidamente tra le directory in percorsi profondi nel tuo filesystem. Contrariamente ai autojumpsegnalibri menzionati da burger.ga , lo stack di directory creato utilizzando pushdè solo temporaneo.
Come il GNU note manuali , pushde popdsono builtin Bash usati per costruire una pila directory temporanea che è un
elenco delle directory visitate di recente. Il built-in pushd aggiunge le directory allo stack mentre cambia la directory corrente, e il popd builtin rimuove le directory specificate dallo stack e cambia la directory corrente nella directory rimossa. Il dirs incorporato mostra il contenuto dello stack di directory.
Ci vuole un po 'per abituarsi, ma ci sono molti tutorial utili là fuori in questo blog e questo sito per esempio. Non ci sono manpage separate per i comandi, poiché sono incluse nella manpage di Bash, ma per un rapido riferimento è possibile visualizzare la pagina GNU Bash .
La spiegazione più chiara è in questo articolo molto utile ed è esattamente il modo in cui uso pushde popd:
In primo luogo, utilizzare dirso dirs -lper elencare le directory nello stack e dirs -cper cancellare lo stack.
In un certo senso aggiungi ai segnalibri la posizione in cui vuoi tornare inserendo
pushd /home/mike/Pictures/Canon/2012_07_01
e quindi è possibile aggiungere più directory allo stack, in modo da ottenere un elenco di directory come di seguito, che include 3 cartelle designate e la ~cartella principale:
dirs
~/Downloads/folder/interest ~/Music/artist/album ~ ~/Pictures/Canon/2012_07_01
In realtà non è necessario utilizzare popdsubito poiché ciò rimuove le directory dallo stack; la cosa migliore da fare è utilizzare pushdper ruotare lo stack, in modo da poter continuare a passare da una directory all'altra e ordinarli come desideri. Per ulteriori informazioni sull'utile rotazione dello stack, consultare la manpage Bash .
Se hai esattamente la disposizione dello stack come dirsmostra l'elenco sopra , pushd +3passa alla cartella Immagini specifica e posizionala in cima allo stack (è +3 e non +4 poiché non conti il tuo ~nello stack della directory):
pushd +3
~/Pictures/Canon/2012_07_01 ~/Downloads/folder/interest ~/Music/artist/album ~
Quindi il prompt dice:
~/Pictures/Canon/2012_07_01$
Puoi continuare a farlo senza rimuoverli dallo stack, anche se qualsiasi cartella in cui cd, oltre a quelli aggiunti allo stack di directory pushd, modificherà lo stack di directory.
Dopo aver disposto lo stack di directory nell'ordine desiderato, è possibile utilizzare popdper scorrere rapidamente le directory e quindi tornare alla cartella principale; ad esempio, da Picturespossiamo tornare a Downloads:
popd
~/Downloads/folder/interest ~/Music/artist/album ~
e il prompt legge
~/Downloads/folder/interest$
In generale, la bellezza di questo è che puoi impostare lo stack di directory e l'ordine degli elementi al suo interno pushde quindi, dire che hai tre file da modificare in ciascuna di quelle directory, puoi tornare immediatamente a ciascuno con popdrimuovendoli dallo stack della directory. Quindi con il tuo ultimo popdtornerai a ~. Diventa particolarmente utile quando si hanno directory particolarmente profonde e si può usare per impostare lo stack di directory per spostarsi rapidamente tra di loro.
Inoltre, questa domanda contiene alcuni suggerimenti che potresti trovare utili quando lavori sulla riga di comando: