/ Forside / Teknologi / Operativsystemer / Linux / Nyhedsindlæg
Login
Glemt dit kodeord?
Brugernavn

Kodeord


Reklame
Top 10 brugere
Linux
#NavnPoint
o.v.n. 11177
peque 7911
dk 4814
e.c 2359
Uranus 1334
emesen 1334
stone47 1307
linuxrules 1214
Octon 1100
10  BjarneD 875
Shell script der sletter tomme filer og ma~
Fra : Kasper Nordal Lund


Dato : 08-01-04 20:11

Hej ng.

Jeg skal lave et shell script der sletter alle tomme filer og mapper i et
givent bibliotek. Hvordan gøres dette ?
Evt. nogen der kender en god begynder guide til shell scripts ?

--
Mvh.
Kasper Nordal Lund


 
 
Christian Iversen (08-01-2004)
Kommentar
Fra : Christian Iversen


Dato : 08-01-04 20:46

Kasper Nordal Lund wrote:

> Hej ng.
>
> Jeg skal lave et shell script der sletter alle tomme filer og mapper i et
> givent bibliotek. Hvordan gøres dette ?
> Evt. nogen der kender en god begynder guide til shell scripts ?

Noget i stil med dette?

find /dir -print0 -type d | xargs -0 rmdir

rmdir er sikker at bruge, da den kun sletter tomme mapper.

--
M.V.H
Christian Iversen

Mogens Kjaer (09-01-2004)
Kommentar
Fra : Mogens Kjaer


Dato : 09-01-04 12:29

Christian Iversen wrote:
> Kasper Nordal Lund wrote:
>
>
>>Hej ng.
>>
>>Jeg skal lave et shell script der sletter alle tomme filer og mapper i et
>>givent bibliotek. Hvordan gøres dette ?
>>Evt. nogen der kender en god begynder guide til shell scripts ?
>
>
> Noget i stil med dette?
>
> find /dir -print0 -type d | xargs -0 rmdir

Tilføj "-depth" til find, ellers slettes directories, der bliver
tomme, ikke.

Fx har man:

/dir/dir1/dir2

hvor dir1 kun indeholder dir2, og dir2 er tomt,
så slettes dir1 ikke når dir2 er væk - med mindre man kører scriptet
igen og igen.

Mogens


--
Mogens Kjaer, Carlsberg A/S, Computer Department
Gamle Carlsberg Vej 10, DK-2500 Valby, Denmark
Phone: +45 33 27 53 25, Fax: +45 33 27 47 08
Email: mk@crc.dk Homepage: http://www.crc.dk


Christian Iversen (09-01-2004)
Kommentar
Fra : Christian Iversen


Dato : 09-01-04 12:50

Mogens Kjaer wrote:

> Christian Iversen wrote:
>> Kasper Nordal Lund wrote:
>>
>>
>>>Hej ng.
>>>
>>>Jeg skal lave et shell script der sletter alle tomme filer og mapper i et
>>>givent bibliotek. Hvordan gøres dette ?
>>>Evt. nogen der kender en god begynder guide til shell scripts ?
>>
>>
>> Noget i stil med dette?
>>
>> find /dir -print0 -type d | xargs -0 rmdir
>
> Tilføj "-depth" til find, ellers slettes directories, der bliver
> tomme, ikke.
>
> Fx har man:
>
> /dir/dir1/dir2
>
> hvor dir1 kun indeholder dir2, og dir2 er tomt,
> så slettes dir1 ikke når dir2 er væk - med mindre man kører scriptet
> igen og igen.

Ups, det er klart!

Så kan man lære at skrive "utestet"

--
M.V.H
Christian Iversen

Peter Dalgaard (09-01-2004)
Kommentar
Fra : Peter Dalgaard


Dato : 09-01-04 13:30

Christian Iversen <chrivers@iversen-net.dk> writes:

....
> >> Noget i stil med dette?
> >>
> >> find /dir -print0 -type d | xargs -0 rmdir
> >
> > Tilføj "-depth" til find, ellers slettes directories, der bliver
> > tomme, ikke.
....
> Ups, det er klart!
>
> Så kan man lære at skrive "utestet"

Det er da præcis hvad "Noget i stil med" er en Usenet kode for!

--
O__ ---- Peter Dalgaard Blegdamsvej 3
c/ /'_ --- Dept. of Biostatistics 2200 Cph. N
(*) \(*) -- University of Copenhagen Denmark Ph: (+45) 35327918
~~~~~~~~~~ - (p.dalgaard@biostat.ku.dk) FAX: (+45) 35327907

Kim Hansen (09-01-2004)
Kommentar
Fra : Kim Hansen


Dato : 09-01-04 13:51

Christian Iversen <chrivers@iversen-net.dk> writes:

> Kasper Nordal Lund wrote:
>
> > Hej ng.
> >
> > Jeg skal lave et shell script der sletter alle tomme filer og mapper i et
> > givent bibliotek. Hvordan gøres dette ?
> > Evt. nogen der kender en god begynder guide til shell scripts ?
>
> Noget i stil med dette?
>
> find /dir -print0 -type d | xargs -0 rmdir

Hvis "-type d" skal have betydning skal det stå før "-print0".

find /dir -type d -depth -print0 | xargs -0 rmdir

Tomme filer slettes med '-type f -size 0', eller noget i den stil. Men
har man mange af dem?

--
Kim Hansen | |\ _,,,---,,_ | Det er ikke
Dalslandsgade 8, A708 | /,`.-´` -. ;:-. | Jeopardy.
2300 København S | |,4- ) )-,_. ,\ ( `'-' | Svar _efter_
Tlf: 32 88 60 86 | '---''(_/--' `-'\_) | spørgsmålet.

Søg
Reklame
Statistik
Spørgsmål : 177559
Tips : 31968
Nyheder : 719565
Indlæg : 6408937
Brugere : 218888

Månedens bedste
Årets bedste
Sidste års bedste