Writing 2D Games in C using SDL by Thomas Lively
Indholdsfortegnelse:
- Før du begynder
- Fjernelse af mapper med
rmdir
- Fjernelse af mapper med
rm
- Fjernelse af kataloger med
find
- Fjernelse af alle tomme mapper
- / bin / rm: Argumentlisten er for lang
- Konklusion
Der er flere forskellige måder at fjerne mapper i Linux-systemer. Hvis du bruger en Desktop-filhåndtering, såsom Gnome's Files eller KDE's Dolphin, kan du slette filer og mapper ved hjælp af managerens grafiske brugergrænseflade. Men hvis du arbejder på en headless server eller vil fjerne flere mapper på én gang, er din bedste mulighed at slette mapper (mapper) fra kommandolinjen.
, vil vi forklare, hvordan man sletter mapper i Linux ved hjælp af
rmdir
,
rm
og
find
kommandoer.
Før du begynder
Når du fjerner et bibliotek ved hjælp af din Desktop-filhåndtering flyttes biblioteket faktisk til papirkurven og kan let gendannes.
Vær ekstra forsigtig, når du fjerner filer eller mapper fra kommandolinjen, for når biblioteket først er slettet ved hjælp af de forklarede kommandoer, kan det ikke gendannes fuldt ud.
På de fleste Linux-filsystemer kræver sletning af et bibliotek skrivetilladelse på biblioteket og dets indhold. Ellers får du "Operation not tilladt" fejl.
Katalognavne med et mellemrum i dem skal undgås med en tilbagegang (
/
).
Fjernelse af mapper med
rmdir
rmdir
er et kommandolinjeværktøj til at slette tomme mapper. Det er nyttigt, når du kun vil slette et bibliotek, hvis det er tomt, uden at behøve at kontrollere, om biblioteket er tomt eller ikke.
For at slette et bibliotek med
rmdir
skal du indtaste kommandoen efterfulgt af navnet på det bibliotek, du vil fjerne. For eksempel at slette et bibliotek ved navn
dir1
skriver du:
rmdir dir1
Hvis biblioteket ikke er tomt, får du følgende fejl:
rmdir: failed to remove 'dir1': No such file or directory
I dette tilfælde skal du bruge kommandoen
rm
eller manuelt fjerne bibliotekets indhold, før du kan slette den.
Fjernelse af mapper med
rm
rm
er et kommandolinjeværktøj til at slette filer og mapper. I modsætning til
rmdir
kan kommandoen
rm
slette både tomme og ikke-tomme mapper.
Som standard fjerner
rm
ikke biblioteker, når det bruges uden mulighed. For at slette et tomt bibliotek skal du bruge indstillingen
-d
(
--dir
) og for at slette et ikke-tomt bibliotek, og alt dets indhold skal du bruge indstillingen
-r
(-
--recursive
eller
-R
).
For eksempel at slette et bibliotek med navnet
dir1
sammen med alt dets indhold, du skriver:
rm -r dir1
Hvis et bibliotek eller en fil i biblioteket er skrivebeskyttet, bliver du bedt om at bekræfte sletningen. For at fjerne et bibliotek uden at blive bedt om det, skal du bruge indstillingen
-f
:
rm -rf dir1
For at fjerne flere mapper på én gang skal du bruge kommandoen
rm
efterfulgt af navnene på de mapper, der er adskilt med mellemrum. Kommandoen herunder fjerner hvert listet bibliotek og deres indhold:
rm -r dir1 dir2 dir3
Indstillingen
-i
fortæller
rm
at bede dig om at bekræfte sletningen af hver undermappe og fil. Hvis biblioteket indeholder en masse filer, kan dette være lidt irriterende, så du kan overveje at bruge indstillingen
-I
, hvad der kun beder dig om, før du fortsætter med sletningen.
rm -rI dir1
For at fjerne katalogtypen
y
og trykke på
Enter
.
rm: remove 1 argument recursively? y
Du kan også bruge regelmæssige udvidelser til at matche og slette flere mapper. For at fjerne alle første niveau-mapper i det aktuelle bibliotek, der slutter med
_bak
, skal du f.eks. Bruge følgende kommando:
rm -r *_bak
Brug af regelmæssige udvidelser til fjernelse af mapper kan være risikabelt. Det anbefales først at liste katalogerne med kommandoen
ls
så du kan se, hvilke mapper der vil blive slettet, før du kører
rm
kommandoen.
Fjernelse af kataloger med
find
find
er et kommandolinjeværktøj, der giver dig mulighed for at søge efter filer og mapper baseret på et givet udtryk og udføre en handling på hver matchet fil eller bibliotek.
Det mest almindelige scenario er at bruge
find
kommandoen til at slette mapper baseret på et mønster. For eksempel at slette alle mapper, der slutter med
_cache
i det aktuelle arbejdsmappe, du vil køre:
find. -type d -name '*_cache' -exec rm -r {} +
Lad os analysere kommandoen ovenfor:
-
/dir
- rekursivt søgning i det aktuelle arbejdsmappe (.
).-type d
- begrænser søgningen til mapper.-name '*_cache'
- søg kun i mapper, der slutter med_cache
-exec
- udfører en ekstern kommando med valgfri argumenter, i dette tilfælde er detrm -r
.{} +
- tilføjer de fundne filer til slutningen afrm
kommandoen.
Fjernelse af alle tomme mapper
For at fjerne alle tomme mapper i et katalogtræ, du vil bruge:
find /dir -type d -empty -delete
Her er en forklaring på de anvendte indstillinger:
-
/dir
- rekursivt søgning i/dir
biblioteket.-type d
- begrænser søgningen til mapper.-empty
- begrænser søgningen kun til tomme mapper.-delete
- sletter alle fundne tomme mapper i undertræen.-delete
kan kun slette tomme mapper.
Brug indstillingen
-delete
med ekstrem forsigtighed. Find-kommandolinjen evalueres som et udtryk, og hvis du først tilføjer indstillingen
-delete
, vil kommandoen slette alt under de startpunkter, du har angivet. Brug altid
-delete
som den sidste mulighed, og inden du sletter, skal du teste kommandoen først uden indstillingen
-delete
.
/ bin / rm: Argumentlisten er for lang
Denne fejlmeddelelse vises, når du bruger kommandoen
rm
til at fjerne et bibliotek, der indeholder et enormt antal filer. Dette sker, fordi antallet af filer er større end systemgrænsen for størrelsen på kommandolinjeargumentet.
Der er flere forskellige løsninger på dette problem. For eksempel kan du
cd
til kataloget og manuelt eller ved hjælp af en løkke til at fjerne undermapper en efter en.
Den nemmeste løsning er først at slette alle filer i kataloget med
find
kommandoen og derefter slette kataloget:
find /dir -type f -delete && rm -r /dir
Konklusion
Med
rm
og
find
kan du slette mapper baseret på forskellige kriterier hurtigt og effektivt.
Sletning af mapper er en enkel og nem proces, men du skal være forsigtig med ikke at slette vigtige data.
rm rmdir find terminalSådan slettes filer i Windows 10, der ikke kan slettes

Der er nogle filer i Windows, som bare ikke kan slettes. Hvis du står over for sådanne problemer på din Windows 10-maskine, kan du prøve disse trin.
Sådan slettes / fjernes brugere i linux (kommando userdel)

I Linux kan du slette en brugerkonto og alle tilknyttede filer ved hjælp af kommandoen userdel. Denne tutorial forklarer userdel-kommandoen og dens muligheder.
Sådan fjernes (slettes) symbolsk links i Linux

Et symbolsk link, også kendt som en symlink, er en speciel filtype, der peger på en anden fil eller bibliotek. I denne vejledning viser vi dig, hvordan du fjerner (sletter) symbolsk links i Linux / UNIX-systemer.