logo

Linux rm | Linux Dzēst failu

“rm” nozīmē noņemt. Šo komandu izmanto, lai noņemtu failu. Komandrindai nav atkritnes vai miskastes, atšķirībā no citām GUI, lai atgūtu failus. Tāpēc, izmantojot šo komandu, esiet ļoti uzmanīgs. Kad esat izdzēsis failu, tas tiek neatgriezeniski noņemts.

Ievads rm

rm ir vispārīga komanda Unix un citās Unix līdzīgās sistēmās. To izmanto, lai izdzēstu objektus, piemēram, simboliskas saites, direktorijus un datoru failus no failu sistēmām. Tas arī noņem dažus īpašus failus, piemēram, ligzdas, caurules un ierīču mezglus, tāpat kā del komanda Microsoft Windows, OS/2 un MS-DOS. Komanda ir pieejama arī EFI apvalkā.

Pārskats par rm

Komanda rm ar atsaistīšanas sistēmas izsaukuma palīdzību no failu sistēmas izdzēš objektu atsauces, kurās objektiem varēja būt divas vai vairākas atsauces (piemēram, fails ar diviem nosaukumiem), un objekti paši tiek noņemti tikai tad, ja katra atsauce ir izdzēsts, un programmas joprojām nav bijušas atvērtas objektu rokturi.

cietajos vākos pret mīkstajiem vākiem
  • Tas pieļauj scenārijus, kuros programma var palaist failu, nekavējoties noņemt to no failu sistēmas un izmantot to ierobežotā vietā, zinot, ka faila vieta tiks atgūta pēc programmas noraidīšanas, pat ja tā tiek atrauta avārijas dēļ.
  • Parasti komanda nesabojā faila datus, jo tās mērķis ir patiešām grūti atsaistīt atsauces. Turklāt atbrīvotajā failu sistēmas telpā joprojām var būt atlikušie dati, izmantojot izdzēsto failu. Dažos gadījumos tas var būt drošības apsvērums, un pastiprināti laidieni dažkārt ļauj izdzēst datus, jo tiek izgriezta pēdējā saite un tādas programmas kā srm un sasmalcināt ir pieejami īpaši datu dzēšanas funkciju nodrošināšanai.
  • Komanda rm ir atrodama tikai no Unix atvasinātām operētājsistēmām, kas parasti neļauj atgūt noņemtos failus, izmantojot tādu metodi kā atkritni, tāpēc lietotāju ieradums iekļaut rm komandu ir ierobežota veida iesaiņojuma veids. netīša faila dzēšana.
  • Ir arī dažas atjaunošanas utilītas, kas mēģinās atjaunot indeksu, un, ja daļas netiek izmantotas atkārtoti, tas var atgūt failu.

Īsa rm vēsture

Komanda rm noņems direktorijus, ja tie ir tukši dažos vecos Unix laidienos. Tomēr darbību var ieviest dažās komandas rm versijās, izmantojot opciju -d, piemēram, BSD (piemēram, macOS, OpenBSD, NetBSD un FreeBSD), kas iegūti no 4.4BSD-Lite2.

Turklāt rm versija, kas sagrupēta GNU coreutils, piedāvā karogu -d, lai palīdzētu nodrošināt saderību. Līdzīgu funkcionalitāti piedāvā standarta rmdir. 7. versijā karodziņš -i ir aizstāts ar 'dzēst no slēdžiem' vai dsw, kas parādījās 1. versijā.

veids java

Sintakse:

 rm 

Komanda rm noņem failu, kas nosaukts pēc opciju iekļaušanas. Lietotāji var izmantot relatīvo ceļu vai pilnīgu faila ceļu, lai nosauktu failus, kas jānoņem. Komanda rm pēc noklusējuma nenoņem direktoriju. Komanda rm foo noņem 'foo' failu pašreizējā lietotāja direktorijā.

Komandu rm var segt ar komandas rm -i čaulas aizstājvārda funkciju, lai ignorētu nejaušu faila dzēšanu. Tomēr, ja lietotājs vēlas noņemt daudz failu bez apstiprinājuma, viņš var iestatīt karogu -i, iekļaujot karogu -f manuāli. Diemžēl šī pieeja rada bīstamus ieradumus aizstājējzīmju lietošanai, izraisot tās nejaušas noņemšanas versiju.

The rm -rf komanda bieži tiek izmantota anekdotēs un jokos par Unix katastrofām, tostarp vairāku failu zaudēšanu filmas veidošanas laikā Pixar un Rotaļlietu stāsts 2 . The rm -rf / komandas versija nozīmētu, ka visi faili, kuriem var piekļūt, izmantojot pašreizējo failu sistēmu, tiktu noņemti, izmantojot iekārtu, ja tos izpildīs superlietotājs.

Vecāku direktorijā, lai noņemtu failu, lielākajā daļā failu sistēmu ir nepieciešama rakstīšanas atļauja. Lai noņemtu direktoriju, ir rekursīvi jānoņem katrs tā saturs. Tam ir nepieciešams rekursīvi ietvert izpildes un rakstīšanas atļaujas šim direktorijam un direktorijam, kas nav tukšs. Lasīšanas atļaujas ir nepieciešamas, lai norādītu direktorija saturu, lai tās noņemtu. Dažreiz tas rada dīvainu situāciju, kad nevar noņemt netukšu direktoriju, jo nav rakstīšanas atļaujas, tāpēc nevar noņemt tā saturu; lai gan, ja līdzīgs direktorijs būtu tukšs, to varētu noņemt.

Piemērs:

kā pārvērst str par int
 rm myfile1 

rm failu

Iepriekš redzamajā momentuzņēmumā mēs esam neatgriezeniski noņēmuši failu myfile1, izmantojot komandu “rm”.

rm Opcijas

OpcijaApraksts
rm *pagarinājumsIzmanto, lai izdzēstu failus ar tādu pašu paplašinājumu.
rm -r vai RLai rekursīvi dzēstu direktoriju.
rm -iInteraktīvi noņemiet failu.
rm -rfSpēcīgi noņemiet direktoriju.
-f-f apzīmē spēku. Tas ignorē failus, kas neeksistē, un ignorē apstiprinājuma uzvednes. Tomēr tas neizdzēsīs failus, izmantojot direktoriju, ja tas ir aizsargāts pret rakstīšanu.
-in-v apzīmē verbose. Tas izdrukā to, ko rm komanda dara terminālī.
-d-d apzīmē direktoriju. Tas noņem tukšu direktoriju un darbojas tikai tad, ja nosauktais direktorijs ir tukšs.
-- viena faila sistēmaTas izdzēš tikai failus līdzīgā failu sistēmā, piemēram, argumentā, un izvairīsies no pievienotās failu sistēmas.