Att ta bort filer och kataloger är en viktig färdighet du måste ha som Linux-användare. Även om det inte är svårt, kan du få ut mer av de nödvändiga Linux-kommandona när du lärt dig hur du använder dem på rätt sätt.
I den här handledningen visar vi dig de olika sätten du kan ta bort filer och kataloger i Linux.
Låt oss komma igång!
Ta bort filer och kataloger med kommandoraden
Låt oss först lära oss hur du kan göra detta med hjälp av Linux-kommandon. Det kan verka svårt för dig i början jämfört med att använda GUI. Men när du väl ser detaljerna kommer du att se hur kraftfulla de är när det gäller att ta bort filer och kataloger.
Ta bort filer med kommandoraden
Det enklaste sättet att ta bort en fil är att använda rm kommando. Om du vill ta bort en fil i den aktuella katalogen skickar du bara filnamnet till kommandot så här:
$ rm myfile
Om målfilen inte finns i den aktuella katalogen måste du skicka hela filsökvägen som ett argument. Se kommandot nedan:
$ rm ./full//file/location/filename
Anta att du har en fil i Dokument katalog i en annan katalog som heter Mina filer. Och du är i hem katalog. Sättet du behöver skriva kommandot på är så här:
$ rm ./MyFiles/Documents/myfile
Du kan också ta bort flera filer med hjälp av rm kommando. För att göra det måste du skicka varje filnamn till kommandot.
—
$ rm myfile1 myfile2 myfile2
Vad händer om du vill ta bort dussintals filer och de är av samma filtyp? Det är tidskrävande att skriva ner namnet på varje fil, eller hur? För att radera alla filer som har samma filtillägg kan du dra nytta av jokertecken.
Genom att använda * jokertecken kan du ta bort alla filer av samma typ på detta sätt:
$ rm *.txt
Detta kommando tar bort alla textfiler som finns i den aktuella katalogen. Ett annat användbart jokertecken är att lägga till ? efter * jokertecken. Se kommandot nedan:
$ rm *.?
Om en fil innehåller ett enda teckentillägg, kommer kommandot ovan att radera den. Så, till exempel, om du har filer som “text.a”, “image.b”, audio.c, kommer alla sådana filer att raderas.
Det kan dock vara riskabelt att använda jokertecken. Du kanske inte märker en viktig fil som raderas. För att tackla det kan du passera -jag flagga. Detta kommer att be om din bekräftelse när du tar bort varje fil. Använd kommandot så här:
$ rm -i *.txt
Om du försöker ta bort skrivskyddade filer får du detta bekräftelsealternativ automatiskt. Genom att trycka på y eller nkan du bestämma om du vill ta bort dem eller inte. Du kan kringgå detta genom att lägga till -f flagga, som visas nedan:
$ rm -f myfile
De -f flaggan tvingar alla filer att tas bort, även om de är skrivskyddade.
Ett annat populärt kommando för att ta bort filer är ta bort länken. Den har inte -f flagga som rm. Så det gör det säkrare att använda. Du kan ta bort en fil med hjälp av ta bort länken kommando så här:
$ unlink myfile
Detta kommando kan endast användas för att radera en enskild fil åt gången.
Det sista kommandot vi vill visa dig är strimla kommando. Till skillnad från de två föregående kommandona skriver detta kommando över filinnehållet innan det raderas. Detta hindrar någon från att återställa filen senare. För att radera filen efteråt måste du passera -u flagga. Så kommandot ser ut så här:
$ shred -u myfile $ shred -u myfile1 myfile2 myfile3
Ta bort kataloger med kommandoraden
Du kan ta bort kataloger med rm och rmdir kommandon.
För att radera en tom katalog med hjälp av rm kommandot måste du klara -d flagga, som visas i detta kommando:
$ rm -d mydirectory
På samma sätt kan du ta bort flera tomma kataloger genom att skicka varje katalognamn till kommandot:
$ rm -d mydirectory1 mydirectory2 mydirectory3
Om katalogen du vill ta bort inte finns i den aktuella, måste du ange den fullständiga sökvägen, så här:
$ rm -d /path/to/the/directory
Du kan dock inte ta bort icke-tomma kataloger på det här sättet. För att radera kataloger som innehåller filer och andra kataloger använder du -r flagga, så här:
$ rm -r mydirectory
I likhet med filer, om en katalog är skrivskyddad kommer du att bli tillfrågad om bekräftelse. Ange för att fortsätta y. För att undertrycka denna prompt kan du återigen passera -f flagga:
$ rm -f directory
Du kan också kombinera flaggor för att uppnå fler resultat. Så om du vill ta bort skrivskyddade kataloger som innehåller andra filer eller kataloger, använd det här kommandot:
$ rm -rf directory
Använd dock det här kommandot sparsamt, eftersom det kan innebära betydande risker.
Det näst mest använda kommandot för att ta bort kataloger är rmdir. För att ta bort en tom katalog, kör detta kommando:
$ rmdir directory
För att ta bort flera kataloger med kommandot, skicka alla katalognamn så här:
$ rmdir first_dir second_dir third_dir
Om den riktade katalogen inte finns i den aktuella katalogen, måste du ange sökvägen till katalogen:
$ rmdir /path/to/the/target/directory
Ett användbart sätt att använda rmdir är när du vill ta bort en hel sökväg med tomma kataloger. För det använder du -s flagga. Detta tar bort målkatalogen och sedan dess överordnade kataloger. Kommandot ser ut så här:
$ rmdir -p parent_dir/intermediate_dir/target_dir
Detta tar bort tre kataloger, från och med target_dir till parent_dir. Men om det finns någon fil eller icke-tom katalog, kommer detta kommando att misslyckas.
I en situation där du vill ta bort flera kataloger med deras överordnade kataloger, om ens en katalog inte är tom, kommer kommandot att visa ett fel. För att lösa detta kan du använda kommandot så här:
$ rmdir -p --ignore-fail-on-non-empty path/to/dir1 path/to/dir2
Om en katalog inte är tom, kommer rmdir att ignorera det och gå till nästa katalog och ta bort den.
Hittills har vi visat dig alla sätt att ta bort filer och kataloger i Linux med hjälp av olika kommandon. Observera att dessa metoder tar bort dem permanent från ditt system. Vad händer om du vill flytta dem till papperskorgen först innan du vill ta bort dem?
Du kan göra det med ett verktyg som heter trash-cli. Installera först verktyget med detta kommando:
$ sudo apt-get install trash-cli
För att flytta en fil eller katalog till papperskorgen, använd dessa kommandon:
$ trash-put myfile.txt $ trash-put mydirectory
Efteråt kan du ta bort filerna och katalogerna från papperskorgen. För att tömma hela papperskorgen, använd det här kommandot:
$ trash-empty
Om du bara vill ta bort en enskild fil från papperskorgen, använd det här kommandot:
$ trash-rm myfile.txt
Detta verktyg ger mer flexibilitet när du tar bort dina filer och kataloger.
Slutliga tankar
Och det är så du kan ta bort filer och kataloger i Linux. Du kan antingen använda de inbyggda kommandona eller använda det nämnda verktyget om du vill kasta dem istället. För filer du inte längre behöver kan du radera dem permanent med hjälp av kommandona vi har visat dig.
Om du har några frågor får du gärna meddela oss i kommentarerna nedan.