logo

Linux rm | Linux Delete File

„RM” înseamnă eliminare. Această comandă este folosită pentru a elimina un fișier. Linia de comandă nu are un coș de gunoi sau un coș de gunoi, spre deosebire de alte GUI-uri pentru a recupera fișierele. Prin urmare, fiți foarte atenți când utilizați această comandă. Odată ce ați șters un fișier, acesta este eliminat definitiv.

Introducere în rm

rm este o comandă generală în Unix și alte sisteme asemănătoare Unix. Este folosit pentru a șterge obiecte precum legături simbolice, directoare și fișiere de computer din sistemele de fișiere. De asemenea, elimină unele fișiere speciale, cum ar fi prize, conducte și noduri de dispozitive, la fel ca comanda del în Microsoft Windows, OS/2 și MS-DOS. Comanda este disponibilă și în interiorul shell-ului EFI.

Prezentare generală a rm

Comanda rm șterge referințele la obiecte din sistemul de fișiere cu ajutorul apelului de sistem de deconectare, în care obiectele ar fi putut avea două sau mai multe referințe (de exemplu, un fișier folosind două nume), iar obiectele sunt eliminate singure numai dacă fiecare referință a fost șters și programele încă nu au fost mânere deschise pentru obiecte.

tcp vs udp
  • Permite scenarii în care un program poate lansa un fișier, îl poate elimina imediat din sistemul de fișiere și îl poate folosi pentru un spațiu limitat, știind că spațiul fișierului va fi recuperat după ce programul se închide, chiar și atunci când acesta se închide prin blocare.
  • În general, comanda nu dăunează datelor fișierelor, deoarece scopul său este foarte greu de deconectat referințele. În plus, spațiul eliberat al sistemului de fișiere poate include în continuare date rămase folosind fișierul șters. Poate fi o considerație de securitate în câteva cazuri, iar versiunile întărite permit uneori ștergerea datelor, deoarece ultima legătură este întreruptă și programe precum srm și fărâmă sunt disponibile special pentru a oferi funcții de ștergere a datelor.
  • Comanda rm se găsește numai pe sistemele de operare derivate din Unix, care de obicei nu permit recuperarea fișierelor șterse folosind o metodă, cum ar fi coșul de reciclare, așa că obiceiul utilizatorilor de a include comanda rm este un tip de wrapper care să restricționeze ștergerea neintenționată a fișierului.
  • De asemenea, există unele utilitare pentru anularea ștergerii care vor încerca să recreeze indexul și, dacă piesele nu sunt reutilizate, poate recupera fișierul.

Scurt istoric al rm

Comanda rm va elimina directoarele dacă acestea sunt goale pe câteva versiuni vechi ale Unix. Totuși, comportamentul poate fi adus în câteva versiuni ale comenzii rm folosind opțiunea -d, de exemplu, BSD-urile (cum ar fi macOS, OpenBSD, NetBSD și FreeBSD) derivate din 4.4BSD-Lite2.

De asemenea, versiunea rm, grupată în GNU coreutils, oferă steag-ul -d pentru a ajuta la compatibilitate. Funcționalități similare sunt oferite de rmdir standard. În versiunea 7, indicatorul -i este înlocuit de „Ștergeți din comutatoare” sau dsw, care a apărut în versiunea 1.

fișier deschis java

Sintaxă:

 rm 

Comanda rm elimină fișierul numit după ce sunt incluse opțiuni. Utilizatorii pot utiliza o cale relativă sau o cale completă a fișierului pentru a denumi fișierele de eliminat. Comanda rm nu elimină, în mod implicit, un director. Comanda rm foo elimină 'foo' fișier în directorul curent al utilizatorului.

Comanda rm poate fi acoperită de o funcție alias shell a comenzii rm -i, astfel încât să ignore ștergerea accidentală a fișierului. Totuși, dacă un utilizator dorește să elimine o mulțime de fișiere fără aprobare, poate seta marcajul -i incluzând manual indicatorul -f. Această abordare, din păcate, produce obiceiuri periculoase pentru utilizarea wildcard-urilor, provocând eliminarea accidentală a versiunii sale.

The rm -rf comanda este adesea folosită în anecdote și glume despre dezastrele Unix, inclusiv pierderea mai multor fișiere în timpul creării filmului Pixar și Toy Story 2 . The rm -rf / versiunea comenzii ar conduce ca toate fișierele accesibile utilizând sistemul de fișiere curent să fie eliminate prin intermediul mașinii dacă sunt executate de un superutilizator.

În directorul părinte, eliminarea unui fișier necesită permisiunea de scriere pe majoritatea sistemelor de fișiere. Pentru a elimina un director, trebuie să eliminați recursiv fiecare conținut al acestuia. Este nevoie să conțină recursiv permisiunile de execuție și scriere pentru acel director și pentru directorul nevid. Permisiunile de citire sunt necesare pentru a specifica conținutul directorului pentru a le elimina. Uneori, provoacă o situație ciudată în care un director care nu este gol nu poate fi șters, deoarece nu aveți permisiunea de scriere, deci nu puteți elimina conținutul acestuia; deși dacă un director similar era gol, se putea elimina.

Exemplu:

anaconda vs șarpe piton
 rm myfile1 

fișier rm

În instantaneul de mai sus, am eliminat permanent fișierul myfile1 cu ajutorul comenzii „rm”.

rm Opțiuni

OpțiuneDescriere
rm *extensieFolosit pentru a șterge fișiere cu aceeași extensie.
rm -r sau RPentru a șterge un director recursiv.
rm -iEliminați un fișier în mod interactiv.
rm -rfEliminați un director cu forță.
-f-f înseamnă forță. Ignoră fișierele care nu există și suprascrie solicitările de confirmare. Cu toate acestea, nu va șterge fișiere printr-un director atunci când este protejat la scriere.
-în-v înseamnă verbose. Imprimă ceea ce face comanda rm în terminal.
-d-d înseamnă director. Îndepărtează un director gol și funcționează numai dacă directorul numit este gol.
--un singur sistem de fișiereAcesta șterge doar fișierele dintr-un sistem de fișiere similar ca argumentul și va evita sistemul de fișiere montat.