next up previous contents
Nästa: 5.3 Att använda disketter Upp: 5. Hur gör man? Förra: 5.1 Att söka efter

5.2 Att söka efter filer

Med hjälp av find kan man spåra upp filer som har vissa specificerade egenskaper, tex att deras namn ser ut på ett visst sätt, att de har en viss storlek, har ändrats inom en viss tidsperiod osv. Det enklaste sättet att använda find är

find katalog -name mönster
På detta kommando söker find i katalogen katalog, inklusive dess underkataloger, efter filer vars namn matchar mönster. Mönstret får innehålla jokertecken precis som i skalet. Eventuella jokertecknen ska dock inte tolkas av skalet utan av find, så man måste ofta skydda mönstret.

Så här söker vi i katalogen /usr efter filer vars namn innehåller ordet ''quake'':$ find /usr -name '*quake*'
/usr/doc/quake-lib
/usr/doc/xquake
/usr/games/xquake.real
/usr/games/xquake
/usr/lib/menu/xquake
/usr/share/gnome/apps/Games/Arcade/Xquake.desktop
/usr/share/games/quake
$
Om argumentet katalog är rotkatalogen /, så söker find bland samtliga filer i datorn. Om katalog utelämnas, så antar find att man syftar på den nuvarande katalogen.$ find -name 'bell*'
./bellman
./dikter/bellman
$

Genom att kombinera find och grep man söka efter filer som innehåller en viss text. Syntaxen för detta är

findkommando | xargs grepkommando
Filnamnen tas fram av find och skickas med hjälp av programmet xargs till grep, som i sin tur söker efter texten i filerna.$ find -name '*n' | xargs grep ost
./dikter/lenngren:Vår prost jag häromdagen såg
./dikter/lenngren:sin frukost redan färdig fann
./lenngren:Vår prost jag häromdagen såg
./lenngren:sin frukost redan färdig fann
$
Vad som hände ovan var att kommandot find -name '*n' fann de fyra filerna ./bellman, ./lenngren, ./dikter/bellman och ./dikter/lenngren. Därefter kördes kommandot grep ost på dessa filer.


next up previous contents
Nästa: 5.3 Att använda disketter Upp: 5. Hur gör man? Förra: 5.1 Att söka efter
Goran Andersson
1999-03-08