Archief - bestanden en subdirs verwijderen

Het archief is een bevroren moment uit een vorige versie van dit forum, met andere regels en andere bazen. Deze posts weerspiegelen op geen enkele manier onze huidige ideeën, waarden of wereldbeelden en zijn op sommige plaatsen gecensureerd wegens ontoelaatbaar. Veel zijn in een andere tijdsgeest gemaakt, al dan niet ironisch - zoals in het ironische subforum Off-Topic - en zouden op dit moment niet meer gepost (mogen) worden. Toch bieden we dit archief nog graag aan als informatiedatabank en naslagwerk. Lees er hier meer over of start een gesprek met anderen.

Low_E

Legacy Member
plz, gooi me geen RTFM naar m'n hoofd, want ik kom met een wellicht zeer eenvoudige vraag.
'k zal eerst effe m'n probleem situeren.
Ik ben aan het werk op een oude pc met daarop Linux, maar ik ken zelf niet veel van linux, noch programmeren, ...
Ik weet wat een shell is en kan er een beetje mee overweg als ik de commando's ken.
Door omstandigheden moet ik SNEL een deel van de harde schijf leegmaken.
Ik kan op zoek in de manpages maar aangezien ik niet weet naar WAT ik moet gaan zoeken, kan dat effe tijd nemen ... en tijd is nu net wat ik niet heb.

Ik zou een aantal mappen van deze pc moeten verwijderen. Ik ken de namen van deze mappen en ook waar ze ongeveer staan maar het zijn er een hele boel waardoor ik heel veel typwerk ga hebben als ik dat mapje per mapje moet verwijderen + ik ben er zeker van dat dat via één commando moet kunnen in de shell.

Op deze pc staan een flink pak data gekopieerd van een windowserver: de accountgegevens. Ik zou nu al deze accountgegevens alle mappen met irrelevante data willen verwijderen, zoals bvb de cookies-mappen, bureaublad, favorieten, Onlangs Geopend ... en meer zever en enkel de map "Mijn Documenten" behouden.

Ik weet dat ik kan zoeken met grep, weet dat er zoiets bestaat als piping ... maar niet hoe de correcte syntaxis zou moeten zijn om bvb in de map \shares\gebruikerX\cookies te gaan deleten (removen) ... en dit voor gebruikerY en gebruikerZ .. in één keer. (er zijn zo'n 2000 gebruiker-accounts)

! Sommige van deze mappen die ik moet verwijderen bevatten ook bestanden of subdirs én bestanden ... maar dat zal wel op te lossen zijn via een paar opties veronderstel ik.

Kan iemand me de juiste commando-syntaxis geven en toch in de juiste weg wijzen.
Zoals eerder gezegd. Ik ben zeker dat ik dat wel zelf zou kunnen vinden maar ik ga veel tijd spenderen met dat uit te zoeken en tijd heb ik nu niet.
alvast bedankt.

Low_E

Legacy Member
tja, de werking van rm (met -r om recursief te werken) kende ik wel al, maar ik wilde juist vermijden dat ik voor al die mappen het volledige path zou moeten gaan typen.
zo'n 2000 gebruikers x een 10 tal mappen ..

zou het ook kunnen, iets in de trend van dit?
Code:
grep mapnaamdiemoetverwijderdworden | rm -rf
of maak ik hier fouten in?

Low_E

Legacy Member
thx.
rm gaat dus zelf op zoek naar de de bewuste mappen

kan je me ook duidelijk maken wat de syntaxis
Code:
 */untitled\ folder9\ [code]
vanwaar die / en \ ?
Kan je niet [code] rm -Vrf "untitled folder9"
gebruiken?

Zir0h

Legacy Member
Low_E zei:
thx.
rm gaat dus zelf op zoek naar de de bewuste mappen

kan je me ook duidelijk maken wat de syntaxis
Code:
 */untitled\ folder9\ [code]
vanwaar die / en \ ?
Kan je niet [code] rm -Vrf "untitled folder9"
gebruiken?

De / is gewoon zoals in /home/gebruikersnaam, de \ wordt gebruikt om te escapen (in dit geval de spaties) en de * is om untitled folder9 terug te zoeken in alle onderliggende mappen.

Als je /*/ gebruikt dan wordt heel je computer gescanned. Ik heb getest vanaf /home/yannick/test.

Code:
 rm -Vrf "untitled folder9"
Jouw code zal enkel in de huidige map naar untitled folder 9 zoeken.

Low_E

Legacy Member
thx dude, dit werkt inderdaad. ik had de "*/" over het hoofd gezien om in onderliggende mappen te kunnen zoeken.
+ dat de optie -V in mijn linuxversie -v is (was snel uitgedokterd via de manpages)
heb even een paar testmappen gemaakt en uitgeprobeerd voor ik het op onze data loslaat.

Merci dude, ge spaart me heel veel werk uit EN ik heb weer wat geleerd.
Nu ik er mee bezig ben, begin ik weer veel zin in Linux te krijgen.

Low_E

Legacy Member
nieuwe vraag
de mappen die verwijderd moeten worden zitten niet nét onder de gebruikersmap, maar een tweede laag diep.
.../gebruikerX/Profile/cookies
waarbij natuurlijk telkens de gebruikersnaam wijzigt, en het om de cookies-map gaat die verwijderd moet worden (en nog andere mappen)

gebruik ik dan volgende syntaxis:
Code:
 rm -vrf */*/cookies
waarbij dat tweede asteriskje aangeeft dat hij een tweede niveau lager moet zoeken ...
of doe ik het best zo:
Code:
rm -vrf */profile/cookies
... hopende dat daarmee niet de hele map profile verloren gaat.


+ heb nieuwe extra vraag:
op welke manier kan je verschillende commando's in één keer ingeven zodat ze gewoon na elkaar uitgevoerd worden zonder dat je er moet blijven bijzitten om ze na aflopen van de eerste, de volgende in te geven?
alvast thx

[edit]
heb info gevonden i.v.m uitvoeren van meerdere commando's: het maken van een script.
hier de info gevonden studeren dus

Coax

Legacy Member
Zitten er spaties in uw gebruikers hun namen?
Indien niet kunt ge iets doen als dit:

Code:
#!/bin/bash
for USER in $(ls /shared); do
    rm -rf /shared/$USER/cookies
    rm -rf /shared/$USER/favorieten
done
Het archief is een bevroren moment uit een vorige versie van dit forum, met andere regels en andere bazen. Deze posts weerspiegelen op geen enkele manier onze huidige ideeën, waarden of wereldbeelden en zijn op sommige plaatsen gecensureerd wegens ontoelaatbaar. Veel zijn in een andere tijdsgeest gemaakt, al dan niet ironisch - zoals in het ironische subforum Off-Topic - en zouden op dit moment niet meer gepost (mogen) worden. Toch bieden we dit archief nog graag aan als informatiedatabank en naslagwerk. Lees er hier meer over of start een gesprek met anderen.
Terug
Bovenaan