GNU/Linux >> Znalost Linux >  >> Linux

Příkaz Linux rm vysvětlený pro začátečníky (8 příkladů)

Mazání souborů je základní operace, stejně jako kopírování souborů nebo jejich přejmenování/přesouvání. V Linuxu existuje vyhrazený příkaz – nazvaný rm - která vám umožní provádět všechny operace související s mazáním. V tomto tutoriálu probereme základy tohoto nástroje spolu s několika snadno srozumitelnými příklady.

Ale než to uděláme, stojí za zmínku, že všechny příklady uvedené v článku byly testovány na Ubuntu 16.04 LTS.

Příkaz Linux rm

Laicky tedy můžeme zjednodušeně říci, že příkaz rm slouží k odstraňování/mazání souborů a adresářů. Následuje syntaxe příkazu:

rm [OPTION]... [FILE]...

A zde je návod, jak to popisuje manuálová stránka nástroje:

This manual page documents the GNU version of rm. rm removes each specified file. By default, it 
does not remove directories.

If  the  -I or --interactive=once option is given, and there are more than three files or the -r,
-R, or --recursive are given, then rm prompts the user for whether to proceed with the entire
operation. If the response is not affirmative, the entire command is aborted.

Otherwise, if a file is unwritable, standard input is a terminal, and the -f or --force option is
not given, or the -i or --interactive=always option is given, rm prompts the user for whether to
remove the file. If the response is not affirmative, the file is skipped.

Následující příklady ve stylu otázek a odpovědí vám poskytnou lepší představu o tom, jak nástroj funguje.

O1. Jak odstranit soubory pomocí příkazu rm?

To je docela snadné a přímočaré. Jediné, co musíte udělat, je předat název souborů (spolu s cestami, pokud nejsou v aktuálním pracovním adresáři) jako vstup příkazu rm.

rm [filename]

Například:

rm testfile.txt

O2. Jak odstranit adresáře pomocí příkazu rm?

Pokud se pokoušíte odstranit adresář, musíte použít -r možnost příkazového řádku. V opačném případě rm vyvolá chybu, že to, co se pokoušíte odstranit, je adresář.

rm -r [dir name]

Například:

rm -r testdir

O3. Jak vytvořit výzvu rm před každým odstraněním?

Chcete-li, aby se rm před každou akcí odstranění, kterou provede, zobrazila výzva, použijte -i možnost příkazového řádku.

rm -i [file or dir]

Předpokládejme například, že chcete odstranit adresář 'testdir' a veškerý jeho obsah, ale chcete, aby se před každým smazáním zobrazila výzva rm, pak to můžete udělat následovně:

rm -r -i testdir

O4. Jak donutit rm, aby ignoroval neexistující soubory?

Příkaz rm vás upozorní prostřednictvím chybové zprávy, pokud se pokusíte smazat neexistující soubor nebo adresář.

Pokud však chcete, můžete nechat rm takové chyby/oznámení potlačit – vše, co musíte udělat, je použít -f možnost příkazového řádku.

rm -f [název souboru]

O5. Jak vytvořit výzvu rm pouze v některých scénářích?

Existuje možnost příkazového řádku -I , který při použití zajišťuje, že se příkaz zobrazí pouze jednou před odstraněním více než tří souborů nebo při rekurzivním odstranění.

Například následující snímek obrazovky ukazuje tuto možnost v akci – při smazání dvou souborů se neobjevila žádná výzva, ale při smazání více než tří souborů se příkaz zobrazil.

O6. Jak funguje rm při práci s kořenovým adresářem?

Smazání kořenového adresáře je samozřejmě to poslední, co by uživatel Linuxu chtěl. To je důvod, proč vám příkaz rm ve výchozím nastavení nedovolí provést rekurzivní operaci odstranění tohoto adresáře.

Pokud však chcete v této operaci z jakéhokoli důvodu pokračovat, musíte to sdělit společnosti rm pomocí --no-preserve-root volba. Když je tato možnost povolena, rm nezachází s kořenovým adresářem (/) speciálně.

V případě, že chcete znát scénáře, ve kterých by uživatel mohl chtít smazat kořenový adresář svého systému, přejděte sem.

O7. Jak zajistit, aby rm odstranil pouze prázdné adresáře?

V případě, že chcete omezit schopnost rm mazat adresáře pouze na prázdné adresáře, můžete použít volbu -d příkazového řádku.

rm -d [dir]

Následující snímek obrazovky ukazuje volbu -d příkazového řádku v akci - byl odstraněn pouze prázdný adresář.

O8. Jak donutit rm, aby vydal podrobnosti o operaci, kterou provádí?

Pokud chcete, aby rm zobrazoval podrobné informace o prováděné operaci, můžete to provést pomocí -v možnost příkazového řádku.

rm -v [file or directory name]

Například:

Závěr

Vzhledem k druhu funkcí, které nabízí, je rm jedním z nejčastěji používaných příkazů v Linuxu (jako je cp a mv). Zde, v tomto tutoriálu, jsme pokryli téměř všechny hlavní možnosti příkazového řádku, které tento nástroj poskytuje. S rm je spojena určitá křivka učení, takže budete muset strávit nějaký čas procvičováním jeho možností, než začnete tento nástroj používat ve své každodenní práci. Pro více informací přejděte na manuálovou stránku příkazu.


Linux
  1. Linuxový příkaz paste vysvětlený pro začátečníky (5 příkladů)

  2. Příkaz wc pro Linux vysvětlený pro začátečníky (6 příkladů)

  3. Linux unexpand Command Vysvětlený pro začátečníky (s příklady)

  1. Linuxový příkaz dir pro začátečníky (10 příkladů)

  2. Příkaz ukončení Linuxu vysvětlený pro začátečníky (s příklady)

  3. Linuxový příkaz objdump vysvětlený pro začátečníky (7 příkladů)

  1. Příkaz Linux Csplit vysvětlený pro začátečníky (6 příkladů)

  2. Linuxový příkaz dirname vysvětlený pro začátečníky (4 příklady)

  3. Linux Free Command vysvětlený pro začátečníky (6 příkladů)