/ 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
"find" og finde nyeste subdir
Fra : Erik


Dato : 06-05-08 14:44

Hvis jeg har følgende dir-struktur:

dir1\abc\
dir1\def\
dir2\ghi\
dir3\
dir4\jkl\
dir4\mno\

Hvordan finder jeg den nyeste subdir (abc,def,ghi,jkl,mno) under hver
hoveddir (dir1-4) således, at jeg får følgende liste:

dir1\def\
dir2\ghi\
dir4\mno\

Kan det mon gøre i én find eller er vi ude i noget "ls -ltr | tail -n 1" for
hver hoveddir?



 
 
Thorbjørn Ravn Ander~ (06-05-2008)
Kommentar
Fra : Thorbjørn Ravn Ander~


Dato : 06-05-08 19:48

Erik skrev:

> Kan det mon gøre i én find eller er vi ude i noget "ls -ltr | tail -n 1" for
> hver hoveddir?

Du kan ikke gøre det i én find.

Spørgsmålet er så hvad du vil have det bedst med? Et lille shell script
eller fx brygge noget Perl sammen.

--
Thorbjørn Ravn Andersen "... plus ... Tubular Bells!"

Erik (07-05-2008)
Kommentar
Fra : Erik


Dato : 07-05-08 09:44

>> Kan det mon gøre i én find eller er vi ude i noget "ls -ltr | tail -n 1"
>> for hver hoveddir?
>
> Du kan ikke gøre det i én find.
> Spørgsmålet er så hvad du vil have det bedst med? Et lille shell script
> eller fx brygge noget Perl sammen.

Jeg har lavet det i et BASH script men troede "find" kunne hjælpe mig til at
gøre det i én linie. Men en "while" løkke er indtil videre min løsning.



Jørgen Heesche (06-05-2008)
Kommentar
Fra : Jørgen Heesche


Dato : 06-05-08 20:45

Erik wrote:
> Hvis jeg har følgende dir-struktur:
>
> dir1\abc\
> dir1\def\
> dir2\ghi\
> dir3\
> dir4\jkl\
> dir4\mno\
>
> Hvordan finder jeg den nyeste subdir (abc,def,ghi,jkl,mno) under hver
> hoveddir (dir1-4) således, at jeg får følgende liste:
>
> dir1\def\
> dir2\ghi\
> dir4\mno\
>
> Kan det mon gøre i én find eller er vi ude i noget "ls -ltr | tail -n 1" for
> hver hoveddir?
>
>
Prøv sådan:
ls -ltR | grep /
(bemærk R for recursiv, ikke r)



--
Med venlig hilsen

Jørgen Heesche
mailto:heesche@webspeed.dk

Erik (07-05-2008)
Kommentar
Fra : Erik


Dato : 07-05-08 09:43

>> Kan det mon gøre i én find eller er vi ude i noget "ls -ltr | tail -n 1"
>> for hver hoveddir?
>>
> Prøv sådan:
> ls -ltR | grep /
> (bemærk R for recursiv, ikke r)

"r" = reverse = de nyeste står nederst. Jeg var ikke ude på at søge
rekursivt, da det ikke vil gavne her.



Jørgen Heesche (07-05-2008)
Kommentar
Fra : Jørgen Heesche


Dato : 07-05-08 12:40

Erik wrote:
>>> Kan det mon gøre i én find eller er vi ude i noget "ls -ltr | tail -n 1"
>>> for hver hoveddir?
>>>
>> Prøv sådan:
>> ls -ltR | grep /
>> (bemærk R for recursiv, ikke r)
>
> "r" = reverse = de nyeste står nederst. Jeg var ikke ude på at søge
> rekursivt, da det ikke vil gavne her.
>
>
Hvis du vil søge ned i subdirectories skal du have option R.
Men der ikke noget i vejen for at bruge både stort R og lille r:
ls -ltRr

--
Med venlig hilsen

Jørgen Heesche
mailto:heesche@webspeed.dk

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

Månedens bedste
Årets bedste
Sidste års bedste