Könyvtárnevek beolvasása tömbbe

Sziasztok,

Egy feladat megoldássában kérném a segítségeteket. Szeretnék egy szkriptet írni, melyhez szükségem lenne arra, hogy adott könyvtár alatt elhelyezkedő alkönyvtárak neveit beolvassam egy tömbbe. Hogyan tudnám ezt megtenni?

Előre is köszi a segítséget! :)

Hozzászólások

Bash?

akkor pl így:

# kell egy valtozo a tomb indexe miatt
a=0
cd valami #a konyvtar amiben dolgozunk
for subdir in *
do
#ellenorizzuk, h konyvtar-e
if [ -d $subdir ]
then
#ha konyvtar, be a tombbe
array[$a]=$subdir
#noveljuk a tomb index valtozojat
a=`expr $a + 1`
fi
done

echo ${array[*]}

hacsak el nem rontottam valamit :)

Köszönöm a segítséget működik!

Két kérdésem azért lenne:
1. Mire jó a '-d' kapcsoló?
2. Mire jó az 'expr' kifejezés és miért nem jó egyszerűen az a=$a+1?

Még csak tanulgatom a nyelvet. :)

--
"A méz már nem ízlik annyira, ha ettünk belőle. A cél nem jelent már annyit, ha elértük. A jutalom már nem olyan értékes, ha megkaptuk."

1., man test
egyébként azt jelenti, hogy a fájl típusa könyvtár-e
elég furcsán hangzik, de valahogy így fogalmaz a man oldal emlékeim szerint

2., ha müködik amit írtál, használhatod azt is. Amelyik szimpatikus. Én már megszoktam az expr használatát, bár jó lenne valami egyszerübb helyette...
szerkesztve:
az a=$a+1 azért nem jó, mert a bash alapban, hacsak nem szám az érték, akkor szövegnek veszi. Azaz mivel ott a '+1' a végén, ez szöveg lesz. (ha valaki jobban tudja javítson ki nyugodtan)
Próbáld csak ki: a=0; a=$a+1; echo $a

Pl így:

DIRECTORY=$PWD
declare -a array=($(find $DIRECTORY -mindepth 1 -maxdepth 1 -type d))
echo ${array[*]}

Find-ot paraméterezgetve lehet továbbfejeszteni. (Például ha kell az alkönytárak alkönytárainak a neve is)