Ko faktiski dara komanda "rm -rf" Linux?
Komanda rm ir UNIX un Linux komandrindas utilīta failu vai direktoriju noņemšanai Linux sistēmā. Šajā rakstā mēs skaidri izskaidrosim, ko faktiski komanda “rm -rf” var paveikt Linux.
Turklāt mēs dalīsimies ar dažiem noderīgiem faila noņemšanas, direktorija noņemšanas, vairāku failu vai direktoriju noņemšanas, apstiprināšanas pieprasīšanas, rekursīvas failu noņemšanas un failu noņemšanas piespiešanas piemēriem.
Komanda rm ir arī viena no bieži izmantotajām komandām Linux sistēmā, bet arī bīstama komanda, kuru jūs atradīsit vēlāk šajā rakstā.
Kā noņemt failu Linux
Pēc noklusējuma komanda rm nekavējoties noņem tikai komandrindā norādītos failus vai failus, un tas nenoņem direktorijus.
$ mkdir -p tecmint_files $ touch tecmint.txt $ rm tecmint.txt $ rm tecmint_files
Kā noņemt vairākus failus Linux
Lai noņemtu vairākus failus vienā brīdī, norādiet failu nosaukumus pa vienam (piemēram: file1 file2) vai izmantojiet modeli, lai vienā reizē noņemtu vairākus failus (piemēram: modelis, kas beidzas ar .txt
).
$ rm tecmint.txt fossmint.txt [Using Filenames] $ rm *.txt [Using Pattern]
Kā noņemt direktoriju Linux
Lai noņemtu direktoriju, varat izmantot slēdzi -r
vai -R
, kas rm liek rīkam rekursīvi izdzēst direktoriju, ieskaitot tā saturu (apakšdirektorijus un failus).
$ rm tecmint_files/ $ rm -R tecmint_files/
Kā noņemt failus ar apstiprinājuma uzvedni
Lai pieprasītu apstiprinājumu faila dzēšanas laikā, izmantojiet opciju -i
, kā parādīts.
$ rm -i tecmint.txt
Kā noņemt direktorijus ar apstiprinājuma uzvedni
Lai pieprasītu apstiprinājumu, dzēšot direktoriju un tā apakšdirektorijus, izmantojiet opcijas -R
un -i
, kā parādīts.
$ rm -Ri tecmint_files/
Kā ar spēku noņemt failu vai direktoriju
Lai piespiedu kārtā noņemtu failu vai direktoriju, varat izmantot opciju -f
piespiedu dzēšanas darbību, neprasot rm apstiprinājumu. Piemēram, ja fails nav rakstāms, rm liks jums noņemt failu vai nē, lai no tā izvairītos un vienkārši izpildītu darbību.
$ rm -f tecmint.txt
Apvienojot karodziņus -r
un -f
, tas nozīmē, ka rekursīvi un piespiedu kārtā noņem direktoriju (un tā saturu), neprasot apstiprinājumu.
$ rm -rf fossmint_files
Kā parādīt informāciju dzēšanas laikā
Lai parādītu vairāk informācijas, dzēšot failu vai direktoriju, izmantojiet opciju -v
, tas ļaus komandai rm parādīt, kas tiek darīts standarta izvadē.
$ rm -rv fossmint_files
Uzziniet rm -Rf/komandu
Jums vienmēr jāpatur prātā, ka “rm -rf”
ir viena no visbīstamākajām komandām, kuru nekad nevar palaist Linux sistēmā, it īpaši kā root. Ar šo komandu tiks notīrīts viss nodalījumā root (/)
.
# rm -rf /
Izveidojiet aizstājvārdu rm komandai Linux
Kā drošības pasākumu jūs varat likt rm vienmēr aicināt jūs apstiprināt dzēšanas darbību katru reizi, kad vēlaties izdzēst failu vai direktoriju, izmantojot opciju -i
. Lai to neatgriezeniski konfigurētu, failā $HOME/.bashrc
pievienojiet aizstājvārdu.
alias rm="rm -i"
Saglabājiet izmaiņas un izejiet no faila. Pēc tam iegūstiet savu .bashrc
failu, kā parādīts, vai atveriet jaunu termināli, lai izmaiņas stātos spēkā.
$ source $HOME/.bashrc
Tas vienkārši nozīmē, ka, izpildot rm, tas pēc noklusējuma tiks izsaukts ar opciju -i
(taču, izmantojot -f
karodziņu, šis iestatījums tiks ignorēts).
$ rm fossmint.txt $ rm tecmint.txt
Vai rm izdzēš failu?
Patiesībā komanda rm nekad neizdzēš failu, tā vietā tiek atsaistīta no diska, bet dati joprojām atrodas diskā un tos var atgūt, izmantojot tādus rīkus kā Foremost.
Ja jūs patiešām vēlaties sasmalcināt komandrindas rīku, lai pārrakstītu failu, lai paslēptu tā saturu.
Tieši tā! Šajā rakstā mēs esam izskaidrojuši dažus patiešām noderīgus rm komandu piemērus un arī izskaidrojuši, ko komanda “rm -rf” var darīt Linux. Ja jums ir kādi jautājumi vai papildinājumi, lai dalītos, izmantojiet zemāk esošo komentāru veidlapu, lai sazinātos ar mums.