'rm' pomeni odstraniti. Ta ukaz se uporablja za odstranitev datoteke. Ukazna vrstica nima koša ali smeti za razliko od drugih GUI za obnovitev datotek. Zato bodite pri uporabi tega ukaza zelo previdni. Ko izbrišete datoteko, je trajno odstranjena.
Uvod v rm
rm je splošni ukaz v Unixu in drugih Unixu podobnih sistemih. Uporablja se za brisanje predmetov, kot so simbolične povezave, imeniki in računalniške datoteke iz datotečnih sistemov. Prav tako odstrani nekatere posebne datoteke, kot so vtičnice, cevi in vozlišča naprav, enako kot ukaz del v sistemih Microsoft Windows, OS/2 in MS-DOS. Ukaz je na voljo tudi znotraj lupine EFI.
Pregled rm
Ukaz rm izbriše sklice na objekte iz datotečnega sistema s pomočjo sistemskega klica unlink, pri katerem so lahko objekti imeli dva ali več sklicevanj (npr. datoteka z dvema imenoma), objekti pa se sami odstranijo le, če vsak sklic je bil izbrisan in programi še vedno niso imeli odprtih ročajev za objekte.
dfs proti bfs
- Omogoča scenarije, v katerih lahko program zažene datoteko, jo takoj odstrani iz datotečnega sistema in jo uporabi za omejen prostor, pri čemer ve, da bo prostor datoteke obnovljen po tem, ko se program opusti, tudi če se opusti zaradi zrušitve.
- Na splošno ukaz ne poškoduje podatkov datoteke, ker je njegov cilj res težko prekiniti povezavo med referencami. Poleg tega lahko sproščeni prostor datotečnega sistema še vedno vključuje ostanke podatkov z uporabo izbrisane datoteke. V nekaterih primerih je to lahko varnostni pomislek, utrjene izdaje pa včasih omogočajo izbris podatkov, ker je zadnja povezava prekinjena in programi, kot srm in raztrgati so na voljo posebej za funkcije brisanja podatkov.
- Ukaz rm je na voljo le v operacijskih sistemih, ki izvirajo iz Unixa, ki običajno ne dovoljujejo obnovitve odstranjenih datotek z metodo, kot je koš, zato je navada uporabnikov, da priložijo ukaz rm, vrsta ovoja za omejevanje nenamerno brisanje datoteke.
- Obstaja tudi nekaj pripomočkov za obnovitev izbrisa, ki bodo poskušali znova ustvariti indeks in če deli niso ponovno uporabljeni, lahko vrnejo datoteko.
Kratka zgodovina rm
Ukaz rm bo odstranil imenike, če so prazni v nekaj starih izdajah Unixa. Kljub temu je vedenje mogoče prenesti v nekaj različicah ukaza rm z možnostjo -d, npr. v BSD-jih (kot so macOS, OpenBSD, NetBSD in FreeBSD), ki izhajajo iz 4.4BSD-Lite2.
Tudi različica rm, združena v GNU coreutils, ponuja zastavico -d za pomoč pri združljivosti. Podobno funkcionalnost ponuja standardni rmdir. V različici 7 je zastavica -i nadomeščena z 'izbriši iz stikal' ali dsw, ki se je pojavil v različici 1.
Sintaksa:
rm
Ukaz rm odstrani datoteko, imenovano po vključenih možnostih. Uporabniki lahko za poimenovanje datotek za odstranitev uporabijo relativno pot ali celotno pot datoteke. Ukaz rm privzeto ne odstrani imenika. Ukaz rm foo odstrani 'foo' datoteko v trenutnem imeniku uporabnika.
Ukaz rm je lahko pokrit s funkcijo vzdevka ukazne lupine ukaza rm -i, da se prezre nenamerno brisanje datoteke. Kljub temu, če želi uporabnik odstraniti veliko datotek brez odobritve, lahko nastavi zastavico -i tako, da ročno vključi zastavico -f. Ta pristop na žalost ustvarja nevarne navade pri uporabi nadomestnih znakov, kar povzroči njegovo nenamerno odstranitev različice.
vadnica za java swing
The rm -rf ukaz se pogosto uporablja v anekdotah in šalah o katastrofah Unixa, vključno z izgubo več datotek med ustvarjanjem filma Pixar in Zgodba igrač 2 . The rm -rf / različica ukaza bi povzročila, da bi bile vse datoteke, do katerih je mogoče dostopati s trenutnim datotečnim sistemom, odstranjene prek stroja, če bi ga izvedel superuporabnik.
pretvori niz v javo
Za odstranitev datoteke v nadrejenem imeniku potrebujete dovoljenje za pisanje v večini datotečnih sistemov. Če želite odstraniti imenik, morate rekurzivno odstraniti vsako njegovo vsebino. Potrebuje, da mora rekurzivno vsebovati dovoljenja za izvajanje in pisanje za ta imenik in imenik, ki ni prazen. Dovoljenja za branje so potrebna za določitev vsebine imenika za njihovo odstranitev. Včasih povzroči čudno situacijo, v kateri nepraznega imenika ni mogoče odstraniti, ker nima dovoljenja za pisanje, zato ne more odstraniti njegove vsebine; čeprav bi bil podoben imenik prazen, bi ga lahko odstranili.
primer:
rm myfile1
Na zgornjem posnetku smo trajno odstranili datoteko myfile1 s pomočjo ukaza 'rm'.
Možnosti rm
Možnost | Opis |
---|---|
rm *podaljšek | Uporablja se za brisanje datotek z isto končnico. |
rm -r ali R | Za rekurzivno brisanje imenika. |
rm -i | Interaktivno odstranite datoteko. |
rm -rf | Prisilno odstranite imenik. |
-f | -f pomeni silo. Prezre datoteke, ki ne obstajajo, in preglasi potrditvene pozive. Vendar pa ne bo izbrisal datotek prek imenika, če je zaščiten pred pisanjem. |
-in | -v pomeni besedno. Natisne, kaj naredi ukaz rm v terminalu. |
-d | -d pomeni imenik. Odstrani prazen imenik in deluje le, če je imenovani imenik prazen. |
--eno-datotečni-sistem | Izbriše samo datoteke v podobnem datotečnem sistemu, kot je argument, in se izogne nameščenemu datotečnemu sistemu. |