GNU/Linux >> Znalost Linux >  >> Linux

Jak přejmenovat adresář v Linuxu

Pokud pracujete se systémy Linux již nějakou dobu, již víte, jak důležité je udržovat strukturovaný souborový systém.

V některých případech může být nutné vytvořit dočasné adresáře s náhodnými názvy, které je třeba později přejmenovat.

Přejmenování adresářů v systému Linux se neprovádí pomocí vyhrazeného příkazu pro přejmenování, ale pomocí příkazu, který slouží více účelům:příkaz „mv“ .

Příkaz „mv“ se v Linuxu používá k tomu, aby bylo možné přesouvat soubory, ale také přejmenovávat adresáře .

V tomto tutoriálu se naučíme, jak můžete přejmenovat adresáře v systému Linux .

Přejmenujte adresáře v systému Linux pomocí mv

Chcete-li přejmenovat adresář v systému Linux, použijte příkaz „mv“ a zadejte adresář, který chcete přejmenovat, a také cíl vašeho adresáře.

$ mv <source_directory> <target_directory>

Řekněme například, že chcete přejmenovat konkrétní adresář ve vašem souborovém systému s názvem „temp“ (umístěný ve vašem domovském adresáři) na „adresář“ (také ve vašem domovském adresáři)

Přejmenování tohoto adresáře , použili byste „mv ” a zadejte dva názvy adresářů.

$ mv /home/user/temp /home/user/directory

Poznámka :použití příkazu mv nesmaže obsah uložený ve vašich adresářích, přejmenováním adresářů v Linuxu neztratíte žádné soubory.

Nyní, když se podíváte na všechny adresáře uložené ve vašem domovském adresáři, uvidíte nový záznam pro vaši složku „adresář“.

$ ls -l /home/user

drwxr--r-x   2 user user 4096 Nov  9 16:41 Desktop/
drwxr-xr-x   2 user user 4096 Nov  9 16:41 Documents/
drwxr-xr-x   2 user user 4096 Nov  9 16:41 Downloads/
drwxr-xr-x   2 user user 4096 Nov  9 16:41 Music/
drwxrwxr-x   2 user user 4096 Dec 20 10:53 directory/

Skvělé, právě jste přejmenovali adresář v systému Linux .

Přejmenovat adresáře pomocí find

V některých případech nemusíte přímo vědět, kde jsou vaše adresáře ve vašem systému umístěny.

Naštěstí pro vás existuje příkaz, který vám pomůže najít a najít adresáře v systému Linux:příkaz find.

Chcete-li najít a přejmenovat adresáře v systému Linux, použijte k vyhledání adresářů příkaz „find“ s možností „type“. Své adresáře pak můžete odstranit provedením příkazu „mv“ s volbou „-execdir“.

$ find . -depth -type d -name <source_directory> -execdir mv {} <target_directory> \;

V tomto příkladu předstírejme, že chcete přejmenovat adresář začínající na „temp“ ve vašem souborovém systému na „adresář“.

První část příkazu vyhledá, kde se nachází váš adresář.

$ find . -depth -type d -name "temp"

./temp

Nyní, když víte, kde je váš adresář, můžete jej přejmenovat pomocí možnosti „execdir“ a příkazu „mv“.

$ find . -depth -type d -name temp -execdir mv {} directory \;

Přejmenovat více adresářů pomocí Bash

Jak bylo popsáno v našich předchozích návodech, skriptovací jazyk Bash lze také použít k přejmenování více adresářů ve vašem souborovém systému.

Chcete-li v systému Linux přejmenovat více adresářů, vytvořte nový soubor skriptu a pomocí příkazu „mv“ ve smyčce „for“ iterujte adresáře.

#!/bin/bash

# Takes directory entries specified and renames them using the pattern provided.

for directory in *
do
    if [ -d "$directory" ]
    then
      mv "${directory}" "${directory}_temp" || echo 'Could not rename '"$directory"''
    fi
done

Uložte tento skript jako „change_name“ a přidejte jej do své proměnné prostředí PATH, pokud jej chcete používat v celém systému.

V tomto skriptu vypisujeme všechny soubory a adresáře, které se nacházejí v aktuální pracovní složce (kde je skript umístěn).

Testujeme, zda je záznam adresář a zda adresář existuje pomocí volby „-d“.

Pak, pokud adresář existuje, je přejmenován tak, aby měl na konci příponu „_temp“. Neváhejte a upravte tento řádek, abyste mohli přejmenovat adresáře, jak chcete, aby byly přejmenovány.

$ ls

folder1/  folder2/

$ change_name

$ ls 

folder1_temp/  folder2_temp

Gratulujeme, právě jste přejmenovali adresáře pomocí skriptu Bash v systému Linux.

Přejmenovat adresáře pomocí přejmenování

Namísto použití příkazu „mv“ můžete použít vyhrazený vestavěný příkaz, tento příkaz však nemusí být přímo dostupný ve vaší distribuci.

Chcete-li přejmenovat adresáře v systému Linux, použijte příkaz „přejmenovat“ s tím, jak chcete soubory přejmenovat, a také cílový adresář.

$ rename <expression> <directory>

Řekněme například, že chcete přejmenovat všechny své adresáře psané velkými písmeny na názvy adresářů psané malými písmeny.

Chcete-li tyto adresáře přejmenovat, spustili byste následující příkaz

$ rename 'y/A-Z/a-z/' *

$ ls -l 

drwxrwxr-x 2 user user 4096 Dec 21 02:26 a_temp
drwxrwxr-x 2 user user 4096 Dec 21 02:26 b_temp

Filtrování adresářů, které mají být přejmenovány

V některých případech můžete chtít přejmenovat pouze několik adresářů pomocí příkazu rename.

Abyste toho dosáhli, máte v podstatě dvě možnosti:

  • Použijte zástupné znaky k filtrování adresářů, které mají být přejmenovány.

Pokud například chcete přejmenovat adresáře končící daným řetězcem, spustili byste následující příkaz.

$ rename 'y/_html/_temp/' *

Syntaxe příkazu rename je stejná jako u příkazu sed:můžete použít tento odkaz, abyste získali další informace o této syntaxi.

  • Použít přesměrování vstupu za účelem filtrování adresářů, které mají být přejmenovány
$ ls -d *_html | rename 'y/*_html/*_temp/'

Při použití jedné z těchto dvou možností budou vaše složky přejmenovány tak, aby měly příponu „_temp“.

$ ls -l

drwxrwxr-x 2 user user 4096 Dec 21 02:42 a_temp
drwxrwxr-x 2 user user 4096 Dec 21 02:42 b_temp

Skvělé, úspěšně jste přejmenovali své adresáře pomocí příkazu přejmenovat!

Závěr

V tomto tutoriálu jste se naučili všechny způsoby přejmenování adresářů v systému Linux, nejběžnějším způsobem je příkaz „mv“.

Také jste se dozvěděli, že je možné přejmenovat adresáře pomocí příkazu „najít“ za účelem nalezení vašich adresářů nebo pomocí příkazu rename (který nemusí být ve výchozím nastavení přímo dostupný ve vašem systému).

Pokud máte zájem o správu systému Linux, máme na webu kompletní sekci, která se jí věnuje, takže se na ni určitě podívejte!


Linux
  1. Jak nahrávat nebo stahovat soubory/adresáře pomocí sFTP v Linuxu

  2. Jak přejmenovat soubory v Linuxu

  3. Jak najít soubor v Linuxu ve všech adresářích rekurzivně

  1. Jak gzipovat adresář v Linuxu

  2. Jak přejmenovat soubor v Linuxu?

  3. Jak získat velikost adresáře v Linuxu

  1. Jak přejmenovat adresář v Linuxu

  2. Jak odebrat adresář v Linuxu

  3. Jak odstranit adresáře a soubory pomocí Linuxu