GNU/Linux >> Znalost Linux >  >> Linux

Jak se rychleji pohybovat v adresářích v Linuxu

Dnes se naučíme některé hacky produktivity příkazového řádku. Jak již víte, používáme příkaz "cd" k pohybu mezi zásobníkem adresářů v operačních systémech podobných Unixu. V této příručce vás naučím, jak rychleji procházet adresáře v Linuxu, aniž byste museli často používat příkaz "cd". Může být mnoho způsobů, ale já právě teď znám pouze následujících pět způsobů! Tuto příručku budu průběžně aktualizovat, až narazím na nějaké metody nebo nástroje k dosažení tohoto úkolu v nadcházejících dnech.

Pět různých metod pro rychlejší navigaci v adresářích v Linuxu

Metoda 1:Použití příkazů "Pushd", "Popd" a "Dirs"

Toto je nejčastější metoda, kterou používám každý den k navigaci mezi hromadou adresářů. Příkazy „Pushd“, „Popd“ a „Dirs“ jsou ve většině distribucí Linuxu předinstalované, takže se s instalací neobtěžujte. Tyto trio příkazy jsou docela užitečné, když pracujete v hluboké adresářové struktuře a skriptech. Další podrobnosti naleznete v našem průvodci v odkazu níže.

  • Jak používat příkazy Pushd, Popd a Dirs pro rychlejší navigaci CLI

Metoda 2:Použití nástroje "bd"

Nástroj "bd" vám také pomůže rychle se vrátit do konkrétního nadřazeného adresáře, aniž byste museli opakovaně zadávat "cd ../../." na vašem Bash.

Bd je také k dispozici v Debian extra a Ubuntu Universe úložišť. Můžete jej tedy nainstalovat pomocí správce balíčků "apt-get" v Debianu, Ubuntu a dalších systémech založených na DEB, jak je uvedeno níže:

Aktualizace $ sudo apt-get
$ sudo apt-get install bd

Pro ostatní distribuce můžete nainstalovat, jak je uvedeno níže.

$ sudo wget --no-check-certificate -O /usr/local/bin/bd https://raw.github.com/vigneshwaranr/bd/master/bd
$ sudo chmod +rx /usr/local/bin/bd
$ echo 'alias bd=". bd -si"'>> ~/.bashrc
zdroj $ ~/.bashrc

Chcete-li povolit automatické dokončení, spusťte:

$ sudo wget -O /etc/bash_completion.d/bd https://raw.github.com/vigneshwaranr/bd/master/bash_completion.d/bd
zdroj $ /etc/bash_completion.d/bd

Obslužný program Bd je nyní nainstalován. Podívejme se na několik příkladů, abychom pochopili, jak rychle procházet zásobníkem adresářů pomocí tohoto nástroje.

Vytvořte nějaké adresáře.

$ mkdir -p dir1/dir2/dir3/dir4/dir5/dir6/dir7/dir8/dir9/dir10

Výše uvedený příkaz vytvoří hierarchii adresářů. Zkontrolujeme strukturu adresářů pomocí příkazu:

$ tree dir1/ dir1/└── dir2 └── dir3 └── dir4 └── dir5 └── dir6 └── dir7 └─└── 9 režie dir└└─0  0 

Dobře, teď máme 10 adresářů. Řekněme, že se aktuálně nacházíte v 7. adresáři, tj. dir7.

$ pwd /home/sk/dir1/dir2/dir3/dir4/dir5/dir6/dir7

Chcete přejít do adresáře 3. Normálně byste napsali:

$ cd /home/sk/dir1/dir2/dir3

Že jo? Ano! Ale není to nutné! Chcete-li se vrátit do adresáře 3, zadejte:

$ bd dir3

Nyní budete v adresáři 3.

Procházejte adresáře rychleji v Linuxu pomocí "bd" Utility

Snadné, že? Podporuje automatické dokončování, takže stačí zadat částečný název adresáře a stisknout klávesu Tab pro automatické dokončení celé cesty.

Chcete-li zkontrolovat obsah konkrétního nadřazeného adresáře, nemusíte do tohoto konkrétního adresáře vstupovat. Místo toho zadejte:

$ ls `bd dir1`

Výše uvedený příkaz zobrazí obsah dir1 z vašeho aktuálního pracovního adresáře.

Další podrobnosti najdete na následující stránce GitHubu.

  • bd GitHub úložiště

Metoda 3:Použití skriptu Shell "Up"

"Nahoru" je skript shellu, který vám umožňuje rychle se přesunout do nadřazeného adresáře. Funguje dobře na mnoha oblíbených mušlích, jako jsou Bash, Fish a Zsh atd. Instalace je také naprosto snadná!

Chcete-li nainstalovat "Up" na Bash , spusťte postupně následující příkazy:

$ curl --create-dirs -o ~/.config/up/up.sh https://raw.githubusercontent.com/shannonmoeller/up/master/up.sh
$ echo 'source ~/.config/up/up.sh'>> ~/.bashrc

Skript up registruje funkci "nahoru" a některé dokončovací funkce prostřednictvím souboru ".bashrc".

Aktualizujte změny pomocí příkazu:

zdroj $ ~/.bashrc

Na zsh :

$ curl --create-dirs -o ~/.config/up/up.sh https://raw.githubusercontent.com/shannonmoeller/up/master/up.sh
$ echo 'source ~/.config/up/up.sh'>> ~/.zshrc

Skript up registruje funkci "nahoru" a některé dokončovací funkce prostřednictvím souboru ".zshrc".

Aktualizujte změny pomocí příkazu:

zdroj $ ~/.zshrc

Na ryby :

$ curl --create-dirs -o ~/.config/up/up.fish https://raw.githubusercontent.com/shannonmoeller/up/master/up.fish
$ source ~/.config/up/up.fish

Skript up registruje funkci "nahoru" a některé dokončovací funkce prostřednictvím "funcsave".

Nyní je čas podívat se na některé příklady.

Pojďme vytvořit nějaké adresáře.

$ mkdir -p dir1/dir2/dir3/dir4/dir5/dir6/dir7/dir8/dir9/dir10

Řekněme, že jste v 7. adresáři, tj. dir7.

$ pwd /home/sk/dir1/dir2/dir3/dir4/dir5/dir6/dir7

Chcete přejít do adresáře 3. Pomocí příkazu "cd" to můžeme provést zadáním následujícího příkazu:

$ cd /home/sk/dir1/dir2/dir3

Ale je opravdu snadné se vrátit do dir3 pomocí skriptu "up":

$ až dir3

A je to. Nyní budete v dir3. Chcete-li přejít o jeden adresář výše, zadejte:

$ až 1

Chcete-li se vrátit o dva adresáře, zadejte:

$ až 2

Je to tak jednoduché. Zadal jsem celou cestu? Ani náhodou. Podporuje také doplňování karet. Stačí tedy zadat částečný název adresáře a klepnutím na kartu dokončete úplnou cestu.

Další podrobnosti najdete na stránce GitHub.

  • Up GitHub Repository

Mějte prosím na paměti, že nástroje "bd" a "up" vám mohou pomoci pouze vrátit se zpět, tj. do nadřazeného adresáře aktuálního pracovního adresáře. Nemůžete se posunout vpřed. Pokud chcete přejít na dir10 z dir5, nemůžete! Místo toho musíte použít příkaz "cd" pro přepnutí na dir10. Tyto dva nástroje jsou určeny pro rychlý přesun do nadřazeného adresáře!

Metoda 4:Použití nástroje „Zkratka“

Toto je další praktický způsob, jak rychle a snadno přepínat mezi různými adresáři. Je to trochu podobné aliasu příkaz. V této metodě vytvoříme zástupce často používaných adresářů a použijeme název zástupce k přechodu do příslušného adresáře, aniž bychom museli zadávat cestu. Pokud pracujete v hluboké adresářové struktuře a zásobníku adresářů, tato metoda výrazně ušetří čas. Jak to funguje, se dozvíte v níže uvedené příručce.

  • Vytváření zástupců k často používaným adresářům ve vašem prostředí

Metoda 5:Použití proměnné prostředí "CDPATH"

Tato metoda nevyžaduje žádnou instalaci. CDPATH je proměnná prostředí. Je to trochu podobné PATH proměnná, která obsahuje mnoho různých cest zřetězených pomocí ':' (dvojtečka). Hlavním rozdílem mezi proměnnými PATH a CDPATH je, že proměnná PATH je použitelná se všemi příkazy, zatímco CDPATH funguje pouze pro cd příkaz.

Mám následující adresářovou strukturu.

Adresářová struktura

Jak vidíte, pod nadřazeným adresářem s názvem "ostechnix" jsou čtyři podřízené adresáře.

Nyní přidejte tento nadřazený adresář do CDPATH pomocí příkazu:

$ export CDPATH=~/ostechnix

Nyní můžete okamžitě cd do podadresářů nadřazeného adresáře (tj. ~/ostechnix v našem případě) odkudkoli v souborovém systému.

Například momentálně jsem v /var/mail/ umístění.

výstup příkazu pwd

Chcete-li cd do ~/ostechnix/Linux/ adresář, nemusíme použít úplnou cestu k adresáři, jak je uvedeno níže:

$ cd ~/ostechnix/Linux

Místo toho stačí uvést název podadresáře, do kterého se chcete přepnout:

$ cd Linux

Automaticky se spustí CD do ~/ostechnix/Linux adresář okamžitě.

proměnná prostředí cdpath

Jak můžete vidět ve výše uvedeném výstupu, nepoužil jsem "cd <úplná-cesta-podadresáře>". Místo toho jsem právě použil příkaz "cd ".

Pamatujte, že CDPATH vám umožní rychle přejít pouze do jednoho podřízeného adresáře nadřazeného adresáře nastaveného v proměnné CDPATH. Při navigaci v zásobníku adresářů (samozřejmě adresářů uvnitř podadresářů) to moc nepomáhá.

Chcete-li najít hodnoty proměnné CDPATH, spusťte:

$ echo $CDPATH

Ukázkový výstup by byl:

/home/sk/ostechnix

Nastavit více hodnot na CDPATH

Podobně jako u proměnné PATH můžeme také nastavit více hodnot (více než jeden adresář) pro CDPATH oddělené dvojtečkou (:).

$ export CDPATH=.:~/ostechnix:/etc:/var:/opt

Zajistěte trvalé změny

Jak již víte, výše uvedený příkaz (export) zachová hodnoty CDPATH pouze do příštího restartu. Chcete-li trvale nastavit hodnoty CDPATH, stačí je přidat do ~/.bashrc nebo ~/.bash_profile soubory.

$ vi ~/.bash_profile

Přidejte hodnoty:

export CDPATH=.:~/ostechnix:/etc:/var:/opt

Stiskněte ESC a zadejte :wq uložit a ukončit.

Aplikujte změny pomocí příkazu:

$ source ~/.bash_profile

Vymazat CDPATH

Chcete-li vymazat hodnoty CDPATH, použijte export CDPATH=”” . Nebo jednoduše smažte celý řádek z ~/.bashrc nebo ~/.bash_profile soubory.

V tomto článku jste se naučili různé způsoby, jak se v Linuxu rychleji a snadněji pohybovat v zásobníku adresářů. Jak vidíte, není tak těžké procházet hromadu adresářů rychleji. Nyní přestaňte donekonečna psát "cd ../../.." pomocí těchto nástrojů. Pokud znáte nějaký jiný nástroj nebo metodu, která stojí za vyzkoušení pro rychlejší procházení adresářů, dejte nám vědět v sekci komentářů níže. Zkontroluji a přidám je do této příručky.


Linux
  1. Jak vyhledávat a odstraňovat adresáře rekurzivně v systému Linux

  2. Jak přejmenovat adresář v Linuxu

  3. Jak rekurzivně vypsat adresáře v C na Linuxu?

  1. Jak kopírovat soubory a adresáře v Linuxu

  2. Jak smyčkovat adresáře v Linuxu?

  3. Přejděte do několika adresářů v linuxu

  1. Jak přesouvat adresáře v Linuxu

  2. Jak zkopírovat soubor do více adresářů v Linuxu

  3. Jak přejmenovat soubory a adresáře v Linuxu