V této příručce se dozvíte několik způsobů, jak rychle a snadno odstranit soubory a adresáře v systému Linux pomocí příkazového řádku.
Jedna ze základních úloh správy souborového systému v Linuxu zahrnuje vytváření, úpravy a mazání různých typů souborů a adresářů. Znalost některých základních nástrojů a konceptů pro mazání souborů se hodí a může vám ušetřit čas.
V tomto článku vám ukážeme několik způsobů souvisejících s mazáním souborů a adresářů v Linuxu. Poskytneme také stručné informace o různých příznacích a možnostech, které můžete použít při mazání souborů a adresářů z vaší linuxové stanice.
Odstranění souborů pomocí příkazu rm
Chcete-li smazat soubor, musíte použít rm (remove) a řekněte mu, jaký soubor nebo soubory chcete odstranit. Má následující obecnou syntaxi:
rm [OPTIONS] FILENAME
Chcete-li například odstranit jeden soubor s názvem file.jpg , zadejte do příkazového řádku následující:
rm file.jpg
rm zobrazí dialogové okno pro potvrzení pro soubory chráněné proti zápisu. V opačném případě příkaz přímo smaže soubor. Chcete-li vytvořit rm vždy zobrazí dotaz před smazáním souboru, můžete použít -i příznak:
rm -i file.jpg
rm Příkaz v Linuxu lze také použít k odstranění více než jednoho souboru najednou. Vynechání více názvů souborů oddělených mezerou jako argumenty pro rm , můžete smazat více souborů:
rm file1.jpg file2.jpg file3.jpg
Můžete použít -f příznak (force) pro odstranění souborů chráněných proti zápisu bez požadavku na potvrzení:
rm -f file.jpg
Kromě toho rm příkaz také podporuje regulární výrazy. Pokud chcete smazat všechny tři soubory (file1.jpg , file2.jpg a file3.jpg ) můžete použít:
rm file*.jpg
Pro případ, že byste to potřebovali, zde je manuálová stránka pro rm příkaz.
Smažte soubory pomocí příkazu unlink
unlink příkaz také odstraní daný soubor. Toto je další, i když ne tak populární způsob mazání souboru v Linuxu.
Můžete použít unlink příkaz k trvalému odstranění jednoho souboru s názvem file.jpg zadáním následujícího:
unlink file.jpg
Pravděpodobně se ptáte, jaký je rozdíl mezi rm a unlink ?
Oba příkazy jsou především obalem stejné základní funkce, kterou je unlink() systémové volání. Ale unlink příkaz trpí následujícími omezeními:
- Nelze smazat adresáře.
- Nelze rekurzovat.
- Může vzít pouze jeden argument najednou.
- Nemá žádné jiné možnosti než
--helpa--version. - Méně kontroly zdravého rozumu.
Další informace o unlink příkaz v systému Linux, podívejte se na stránku jeho příručky.
Odstranění adresářů pomocí příkazu rm
Přidáním -r (rekurzivní) k rm příkazem v Linuxu, můžete odstranit adresář spolu s veškerým jeho obsahem (soubory, podadresáře atd.).
Chcete-li například odebrat adresář s názvem myfiles , zadejte do příkazového řádku následující:
rm -r myfiles/
rm příkaz vás požádá o ověření procedury, pokud je zadaný adresář nebo soubor v něm chráněn proti zápisu. Odstranění adresáře bez potvrzení:
rm -rf myfiles/ Chcete-li odstranit více adresářů (například mojesoubory1, mojesoubory2 a mojesoubory3), zadejte rm -rf následovaný názvy adresářů nebo cestami k adresářům odděleným mezerou takto:
rm -rf myfiles1/ myfiles2/ myfiles3/ Odstranění adresářů pomocí příkazu rmdir
Zde je důležité poznamenat: rmdir příkaz se používá pouze při mazání prázdných adresářů v Linuxu. Pokud potřebujete odstranit neprázdný adresář, použijte rm příkaz.
Pokud zadaný adresář není prázdný, výstup zobrazí chybu, jak je uvedeno níže.
rmdir: failed to remove 'myfiles/': Directory not empty
Chcete-li odstranit jeden prázdný adresář, napište rmdir následovaný názvem adresáře nebo cestou k adresáři takto:
rmdir myfiles/
Chcete-li odebrat více adresářů (například myfiles1 , myfiles2 a myfiles3 ), zadejte rmdir následují názvy adresářů nebo cesty k adresářům oddělené mezerou takto:
rmdir myfiles1/ myfiles2/ myfiles3/ Pokud příkaz najde obsah v některém z uvedených adresářů, přeskočí jej a přejde na další.
Pomocí -p možnosti přidané do rmdir každý z argumentů adresáře je považován za cestu, ze které budou odstraněny všechny komponenty, pokud jsou již prázdné, počínaje poslední komponentou.
Například následující příkaz odstraní obojí:nadřazený myfiles adresář a jeho podadresář subdir .
rmdir -p myfiles/subdir/
Pro případ, že byste to potřebovali, zde je manuálová stránka pro unlink příkaz.
Závěr
Nyní byste měli jasně rozumět tomu, jak odstranit soubory a adresáře v Linuxu z příkazového řádku.
Je důležité si uvědomit, že když v Linuxu smažete soubor nebo adresář pomocí rm , unlink a rmdir , je okamžitě odstraněn, místo aby se přesunul do koše. Proto budete muset být při používání těchto příkazů opatrní, protože odstraněné soubory neobnovíte.
Nyní si procvičte příklady uvedené v tomto článku a měli byste být připraveni.