logo

Linux rm | Linux Slett fil

'rm' betyr fjern. Denne kommandoen brukes til å fjerne en fil. Kommandolinjen har ikke en papirkurv eller søppel i motsetning til andre GUI-er for å gjenopprette filene. Vær derfor veldig forsiktig når du bruker denne kommandoen. Når du har slettet en fil, fjernes den permanent.

Introduksjon til rm

rm er en generell kommando i Unix og andre Unix-lignende systemer. Den brukes til å slette objekter som symbolske lenker, kataloger og datafiler fra filsystemene. Den fjerner også noen spesielle filer som stikkontakter, rør og enhetsnoder, det samme som del-kommandoen i Microsoft Windows, OS/2 og MS-DOS. Kommandoen er også tilgjengelig i EFI-skallet.

Oversikt over rm

rm-kommandoen sletter objektreferanser fra filsystemet ved hjelp av systemanropet fra koblingen, der objektene kan ha hatt to eller flere referanser (f.eks. en fil som bruker to navn), og objektene fjernes selv bare hvis hver referanse har blitt slettet og programmene har fortsatt ikke vært åpne håndtak for objektene.

nbsp
  • Det tillater scenarier der et program kan starte en fil, fjerne den umiddelbart fra filsystemet og bruke den for begrenset plass, vel vitende om at plassen til filen vil bli gjenopprettet etter at programmet avvises, selv når det avviser ved å krasje.
  • Vanligvis skader ikke kommandoen fildata fordi målet er veldig vanskelig å koble fra referanser. Dessuten kan den frigjorte filsystemplassen fortsatt inneholde data som er igjen med den slettede filen. Det kan være en sikkerhetshensyn i noen få tilfeller, og herdede utgivelser lar noen ganger slette dataene fordi den siste lenken kuttes, og programmer som f.eks. srm og makulere er tilgjengelig spesifikt for å gi dataslettingsfunksjoner.
  • rm-kommandoen finnes bare på Unix-avledede operativsystemer, som vanligvis ikke tillater gjenoppretting av fjernede filer ved hjelp av en metode, for eksempel papirkurven, så vanen til brukerne å vedlegge rm-kommandoen er en type innpakning for å begrense utilsiktet sletting av filer.
  • Det er også noen gjenopprettingsverktøy som vil prøve å gjenskape indeksen, og hvis delene ikke gjenbrukes, kan den få tilbake filen.

Kort historie om rm

Kommandoen rm vil fjerne kataloger hvis de er tomme på noen få gamle utgivelser av Unix. Likevel kan oppførselen hentes inn i noen få versjoner av rm-kommandoen ved å bruke -d-alternativet, for eksempel BSD-ene (som macOS, OpenBSD, NetBSD og FreeBSD) avledet fra 4.4BSD-Lite2.

Dessuten tilbyr rm-versjonen, gruppert i GNU-coreutils, flagget -d for å hjelpe med kompatibilitet. Lignende funksjonalitet tilbys av standard rmdir. I versjon 7 er -i-flagget erstattet av 'slett fra brytere' eller dsw, som dukket opp i versjon 1.

Syntaks:

 rm 

rm-kommandoen fjerner filen oppkalt etter at alternativer er inkludert. Brukere kan bruke en relativ bane eller en fullstendig bane til filen for å navngi filene som skal fjernes. rm-kommandoen fjerner ikke som standard en katalog. Kommandoen rm foo fjerner 'foo' filen i brukerens gjeldende katalog.

rm-kommandoen kan dekkes av en shell-aliasfunksjon til rm -i-kommandoen for å ignorere utilsiktet filsletting. Likevel, hvis en bruker ønsker å fjerne mange filer uten godkjenning, kan de sette -i-flagget ved å inkludere -f-flagget manuelt. Denne tilnærmingen, dessverre, produserer farlige vaner for jokertegnbruk, og forårsaker dens utilsiktede fjerningsversjon.

nfa eksempler

De rm -rf kommando brukes ofte i anekdoter og vitser om Unix-katastrofer, inkludert tap av flere filer under opprettelsen av filmen Pixar og Toy Story 2 . De rm -rf / versjonen av kommandoen vil føre til at alle filer som er tilgjengelige med det gjeldende filsystemet, fjernes gjennom maskinen hvis de utføres av en superbruker.

nettverkstopologier

På den overordnede katalogen trenger du skrivetillatelsen på de fleste filsystemer for å fjerne en fil. For å fjerne en katalog, må man rekursivt fjerne hvert av innholdet. Den trenger at man rekursivt må inneholde kjøre- og skrivetillatelsene for den katalogen og den ikke-tomme katalogen. Lesetillatelsene kreves for å spesifisere kataloginnholdet for å fjerne dem. Noen ganger forårsaker det en merkelig situasjon der en ikke-tom katalog ikke kan fjernes ettersom man ikke har skrivetillatelse, så man kan ikke fjerne innholdet; selv om en lignende katalog var tom, kunne man fjerne den.

Eksempel:

 rm myfile1 

rm filen

I øyeblikksbildet ovenfor har vi fjernet filen myfile1 permanent ved hjelp av 'rm'-kommandoen.

rm alternativer

AlternativBeskrivelse
rm *utvidelseBrukes til å slette filer med samme filtype.
rm -r eller RFor å slette en katalog rekursivt.
rm -iFjern en fil interaktivt.
rm -rfFjern en katalog med makt.
-f-f står for kraft. Den ignorerer filer som ikke eksisterer og overstyrer bekreftelsesmeldingene. Den vil imidlertid ikke slette filer gjennom en katalog når den er skrivebeskyttet.
-i-v står for verbose. Den skriver ut hva rm-kommandoen gjør i terminalen.
-d-d står for katalog. Den fjerner en tom katalog og fungerer bare hvis den navngitte katalogen er tom.
--ett-filsystemDen sletter bare filer på et lignende filsystem som argumentet og vil unngå det monterte filsystemet.