Új hozzászólás Aktív témák

  • marky mark
    csendes tag

    Sziasztok!

    Kezdő linuxus vagyok. Főiskolán levelező tagozaton kaptam egy feladatot miszerint is:

    Írjon bash szkriptet amely kiírja a log.txt-be az első paraméterben megadott könyvtárban levő futtatható fájlok sorainak átlagos számát, a második paraméterben megadott könyvtárban levő olvasható fájlok számát...

    A könyvtárban lévő olvasható fájlok darabszámával nem volt gondom. A feladat első részét is sikerült megcsinálnom, csak "find" parancs használatával, amit a tanár visszadobott, mondván, hogy csak "test", "expr", "wc", "ls", "cat", "echo", "for","while", "if" , "exit" segédprogramokat használhatok, ezeken felül parancsátirányításokat, változókat és csővezetéket.

    Egyszerűen nem jutok előbbre bárhogy is próbálkozom... Addig már eljutottam, hogy ki tudom listázni a futtatható fájlokat, valamint meg is tudom számolni őket de semmi fajtaféle műveletet nem enged csinálni ezen parancsok használatával. Az biztos hogy egy ciklussal kéne végigszaladni rajta, de find parancs nékül képtelen vagyok értelmesen megírni a scriptet... xD

    Válaszaitokat előre is köszönöm!

    Én addig jutottam ezzel, hogy megszámolni meg tudom find nélkül, a bennük lévő sorok átlagos száma nem akar összejönni.

    read=0
    if [ -r $1 ]
    then
    read=`ls $1 | wc -l`
    fi
    echo $read > log.txt

    A futtathatót ugyanígy kéne, csak kéne egy for is, ami utána végigmegy rajtuk, és wc-vel megszámolja a sorokat, majd a végén egy átlagolás (sorok száma/fájlok száma).
    De lehet, hogy eleve for-ral kéne kezdeni, tesztelni futtathatóra, és ha az, akkor számolni, a benne lévő sorok számát pedig hozzáadni egy változó értékéhez.

Új hozzászólás Aktív témák