Bash som kollar en katalog

Här pratar vi programmering i dessa olika former. Perl, C/C++, Pascal, ADA, Lisp, COBOL, ZX Basic och mm.
Post Reply
Cazz
Posts: 430
Joined: 26 January 2005, 17:56

Bash som kollar en katalog

Post by Cazz » 21 July 2007, 20:41

Hur gör jag för att se om en katalog innerhåller filer och katalog.

För om den innerhåller så ska den göra en sak.
MVH
Cazz
Windows 8 64-bit
Senaste Debian versionen på den dedikerad virtuell server

thewolf
Posts: 264
Joined: 3 November 2003, 00:07
Location: Jönköping
Contact:

Post by thewolf » 21 July 2007, 23:41

if test -a "filnamn"
then
Gör nånting
fi
-a returnerar sant om filen finns
-r returnerar sant om filen finns och är läsbar
-w returnerar sant om filen finns och är skrivbar
-x returnerar sant om filen finns och är exekverbar
-f returnerar sant om filen finns och är en vanlig fil
-d returnerar sant om filen finns och är en katalog
-h returnerar sant om filen finns och är en symbolisk länk
-s returnerar sant om filen finns är större än 0

Hoppas att det hjälper dig... :D
Hej svejs :D

Cazz
Posts: 430
Joined: 26 January 2005, 17:56

Post by Cazz » 21 July 2007, 23:50

Kul men då måste jag ju veta vad filen heter???
MVH
Cazz
Windows 8 64-bit
Senaste Debian versionen på den dedikerad virtuell server

thewolf
Posts: 264
Joined: 3 November 2003, 00:07
Location: Jönköping
Contact:

Post by thewolf » 22 July 2007, 00:24

testa med *
Hej svejs :D

Cazz
Posts: 430
Joined: 26 January 2005, 17:56

Post by Cazz » 22 July 2007, 00:33

ska testa senare, ska snart nanna

blir väll typ

Code: Select all

if test -a /katalogen/* 
then 
Gör nånting 
fi
typ om det går
MVH
Cazz
Windows 8 64-bit
Senaste Debian versionen på den dedikerad virtuell server

lilltroll
Posts: 1
Joined: 29 July 2009, 16:47

Re: Bash som kollar en katalog

Post by lilltroll » 29 July 2009, 16:49

Hej.

Om man vill kolla av om det blivit någon ny fil skapad i katalogen, säg var 10 minut.

Hur löser man det?

Mvh
Nicklas

User avatar
li
Posts: 1124
Joined: 17 April 2003, 13:38
Location: Stockholm

Re: Bash som kollar en katalog

Post by li » 29 July 2009, 21:03

Använd kommandot:

sleep 600

för att vänta 10 minuter.

Det är en stor brist i linux och unix, tror jag, att man inte kan få en signal vid olika händelser (exempelvis att det kommer in en fil). Andra operativsystem har den funtionen. :evil:
gentoo 3.0
arch 3.0
freeBSD 8.2
qemu/minix3
win/xp

Cazz
Posts: 430
Joined: 26 January 2005, 17:56

Re: Bash som kollar en katalog

Post by Cazz » 29 July 2009, 21:06

Alternativ att man har den i en cron och gör en körning var 10 min. låter bättre tycker jag en ha ett script "liggande"
MVH
Cazz
Windows 8 64-bit
Senaste Debian versionen på den dedikerad virtuell server

User avatar
brain
Posts: 666
Joined: 31 August 2002, 00:03

Re: Bash som kollar en katalog

Post by brain » 29 July 2009, 23:03

lilltroll wrote: Om man vill kolla av om det blivit någon ny fil skapad i katalogen, säg var 10 minut.

Hur löser man det?
Med inotify. Sök o du skall finna.
I'd rather shuffle a deck of cards in my rectum than read about Microsoft.

User avatar
li
Posts: 1124
Joined: 17 April 2003, 13:38
Location: Stockholm

Re: Bash som kollar en katalog

Post by li » 30 July 2009, 12:08

Inotify hade jag glömt. Funkar väldigt bra. :D

http://inotify-tools.sourceforge.net/
gentoo 3.0
arch 3.0
freeBSD 8.2
qemu/minix3
win/xp

erik_persson
Posts: 1474
Joined: 29 August 2002, 15:19

Re: Bash som kollar en katalog

Post by erik_persson » 31 July 2009, 05:24

li wrote:Använd kommandot:

sleep 600

för att vänta 10 minuter.

Det är en stor brist i linux och unix, tror jag, att man inte kan få en signal vid olika händelser (exempelvis att det kommer in en fil). Andra operativsystem har den funtionen. :evil:
fam (file alteration monitor) är en standard för detta och är mer operativsystemsoberoende än inotify och det gamla dnotify.
gamin använder fam om inte inotify hittas och jag tror att gamin också använder fam för nfs.

fam fungerar även för tex nfs, vilket rimligen inte inotify gör.

/erik

Post Reply