Faila dzēšana jebkurā operētājsistēmā parasti ir tikpat vienkārša, kā noklikšķinot uz tā un nospiežot taustiņu Dzēst vai noklikšķinot ar peles labo pogu un nosūtīt to uz atkritni. Mēs visi zinām, kā to izdarīt, un tā ir labākā iespēja izdzēst priekšā esošo failu. Bet kas notiek, ja mēs vēlamies, piemēram, izdzēst vairākus failus, kas atrodas vienā mapē? Gadās, ka Linux mums ir rm komanda kas ļaus mums praktiski kaut ko izslēgt no termināla.
"Rm" ir saīsinājums no “noņemt”, kas angļu valodā ir “likvidēt”. To izmanto, lai izdzēstu failus, un, ja to izmanto rekursīvi, tas arī ļaus mums izdzēst direktorijus. Pēc noklusējuma tas nenoņem direktorijus un visus komandrindā norādītos failus. Noņemšanas process faila nosaukumu no faila sistēmas atsaista no saistītajiem datiem un iezīmē krātuves vietu kā izmantojamu turpmākajiem rakstiem. Jums jābūt piesardzīgam, jo, izdzēšot kaut ko ar rm, to vairs nevar atgūt.
Pieejamās iespējas rm
-f, - spēku |
Ignorējiet neeksistējošos failus un nekad neprasiet tos pirms dzēšanas. |
-i | Jautājiet pirms dzēšanas. |
-I | Jautājiet vienreiz, pirms izdzēšat vairāk nekā trīs failus vai dzēšot rekursīvi. |
–Interaktīvs[=KAD] | Jautājums pēc KAD: nekad, vienreiz (-I) vai vienmēr (-i). Jā KAD nav norādīts, vienmēr jautājiet. |
–Viena failu sistēma | Rekursīvi dzēšot hierarhiju, tas ignorē direktoriju, kas atrodas citā direktorijā nekā tas, kas atbilst komandrindas argumentam. |
–Nesaglabā sakni | Ar saknes direktoriju tas netiek īpaši apstrādāts. |
–Konservu sakne | Tas nenoņem saknes direktoriju, kas ir noklusējuma darbība. |
-r, -R, – Rekursīvs |
Rekursīvi noņemiet direktorijus un to saturu. |
-d, –Dir |
Dzēst tukšos direktorijus. Šī opcija ļauj mums noņemt direktoriju, nenorādot -r / -R / –rekursīvu. |
-v, –Verbose |
Daudzfunkcionāls režīms; Visu laiku izskaidrojiet, kas tiek darīts. |
- palīdzēt | Parādīt palīdzības ziņojumu. |
-pārdošana | Parāda versijas informāciju. |
Praktiski piemēri
rm pēc noklusējuma neizdzēš direktorijus. Tam mums jāizmanto -r / -R / –rekursīvās opcijas. Ja direktorijs ir tukšs, izmantojiet opciju n -d / –dir. Ja mēs vēlamies noņemt failu, kas sākas ar domuzīmi (-), mums pirms faila nosaukuma jāpievieno atsevišķa dubultā domuzīme (-). Ja otrā domuzīme netiek pievienota, rm var nepareizi interpretēt faila nosaukumu kā opciju. Ir vērts atcerēties, ka zvaigznīte (*) nozīmē "viss, kas atbilst", pievienojot "*". un aiz tikai zvaigznītes.
Piemēram, lai izdzēstu failu «-test.txt», mums jāizmanto komanda
rm -- -prueba.txt
Iepriekš minētais būs gadījumā, kad tas atrodas mūsu personiskajā mapē. Ja nē, mums būs jāpievieno pilns ceļš, kas būtu apmēram šāds:
rm /home/pablinux/Documentos/-file
Atšķirība starp abām iespējām ir tāda, ka otrajā gadījumā tās priekšā ir slīpsvītra (/), kas padara opciju nesajaucošu.
Citi piemēri būtu:
- rm -f tests-txt: izdzēsīs failu "test.txt", neprasot, pat ja tas ir aizsargāts.
- rm *: tas izdzēsīs visus failus direktorijā, kurā atrodamies, no termināla. Ja tam ir rakstīšanas aizsardzība, pirms dzēšanas tas mums to jautās.
- rm -f *: noņems visu direktorijā, neprasot.
- rm-i *- Mēģinās izdzēst visus direktorijā esošos failus, bet katru reizi lūdziet to izdzēst.
- rm-I *: kā iepriekš, bet apstiprinājumu lūgs tikai tad, ja ir vairāk nekā trīs faili.
- rm -r direktorijs, kur "direktorijs" ir īpašs: tas noņems direktoriju "katalogs" un visus tajā esošos failus un apakšdirektorijus. Ja kādi faili vai apakšdirektoriji ir aizsargāti pret rakstīšanu, tas jautās.
- rm -rf direktorijs: tāds pats kā iepriekš, bet nejautās.
Komanda, kuru nekad nevajadzētu izmantot: rm -rf /
Un mēs beidzam ar komandu, kuru sociālajos tīklos varam redzēt vairāk kā joku nekā jebko citu. Iepriekš minētā komanda nozīmē 1 - dzēst, 2 - cik vien iespējams rekursīvi un 3 - sākot ar sakni. Sakarā ar to, kā Linux pārvalda diskus, tas arī izdzēsīs jebkura cietā diska saturu, kuru esam pievienojuši savam datoram. Ja jūs to izmantojat, nesakiet, ka mēs nebijām brīdinājuši.
Interesanti par precizējumu attiecībā uz pēdējo komandu, es zināju, ka varu izdzēst visu tā diska saturu, kurā atrodas sistēma, taču nezināju, ka tas izdzēsa arī jebkura cita diska saturu, kuru esam pievienojuši!
Liels paldies, jūsu ziņa bija ļoti noderīga, es ļoti viegli atrisināju savu problēmu, bet bez tā es nebūtu guvis panākumus.