Hoe verwijder ik een directory en al zijn inhoud?

In feite weet ik alleen dat

rmdir directoryname 

de directory zal verwijderen, maar alleen als het leeg is. Is er een manier om submappen geforceerd te verwijderen?

Antwoord

Het volgende commando zal het voor je doen . Wees echter voorzichtig.

rm -rf directoryname 

Reacties

  • " -f " is " –force " die sommige gezondheidscontroles opheft en vragen. Een veiliger commando om mee te beginnen is rm -r directoryname.
  • Om de een of andere reden krijg ik een rm: invalid option -- r foutmelding wanneer proberen een directory te verwijderen met rm -r < directoryname >.
  • @Sunspawn Controleer deze gerelateerde vraag om te zien of dat ' het geval is.
  • @JimParis Ik denk dat het woord " veiliger " is relatief. Stel dat u een script schrijft dat op een externe computer moet worden uitgevoerd. Dat script heeft een commando dat een directory moet verwijderen. Hier zou het " veiliger zijn " om rm -rf directoryname te gebruiken omdat je ' wil niet dat uw script de uitvoering pauzeert, omdat het ' wacht op invoer van de gebruiker. Natuurlijk moet je er zeker van zijn dat het verwijderen van de directory geen kwaad kan.

Answer

if rm -rf directoryname faalt, probeer rm -R -f directoryname of rm --recursive -f directoryname.

Als je hier geen geluk mee hebt, zou je moeten overwegen om rm opnieuw te installeren of shells te wisselen.

Reacties

  • Dit waren de opties die beschikbaar waren op mijn rm man-pagina, heb ik het opgezocht door man rm te typen om mijn opties voor recursieve verwijdering en de forceren opties te bekijken.
  • Heeft uw rm manpaginalijst -r? Wat doet het? (Probeer het in een map die u alleen voor testdoeleinden maakt, met alleen dummy-bestanden (en misschien submappen) erin.) Welk besturingssysteem gebruikt u?
  • P.S. Als rm -r niet ' werkt, zou dat een OS-probleem zijn, geen shell-probleem. (Strikt genomen zou het een probleem zijn met de versie van rm die u ' hergebruikt, dus u kunt dit oplossen door een andere versie van rm, of door uw systeem te zoeken om te zien of u al een andere versie van rm in een andere directory dan /bin.)
  • Ah, juist. Ik vergat I ' m op Ubuntu 14.04 te vermelden. Toen ik man rm in mijn terminal uitvoerde, kreeg ik een tekstbestand met de less tekstviewer. Ik scrolde en vond een ingesprongen item met een geheel dat de -R en –recursive opties had die samenkwamen met de -r optie, wat aangeeft dat al deze argumenten zijn identiek.
  • edit: heb je sudo rm -r directoryName geprobeerd? De ongeschreven regels van de basiscommandos zijn dat -r een programma toestaat om recursief te draaien op elk bestand van je bestandssysteem (beginnend waar je maar wilt!) En dat -f dingen krachtig zal doen, zelfs als het ' s gevaarlijk is. ' cd ', ' mv ', ' ls ' meestal houdt dit principe waar. ls -r / wordt een duzie, en cp -rf / /dev/null zal alles op je bestandssysteem vernietigen. < – Voer dat commando nooit uit!

Geef een reactie

Het e-mailadres wordt niet gepubliceerd. Vereiste velden zijn gemarkeerd met *