AWK
  • Vaxi
    #5
    Annyit tudok besegíteni, hogy bevágom a régi kötprogomat.

    #!/bin/bash

    # parameterek szamanak ellenorzese
    if [ $# -ne 2 ] ; then
    echo "Hasznalat filenev.sh SZAM KONYVTAR"
    exit 1
    fi

    #Értékadás
    MERET=$1
    KONYVTAR=$2
    #könyvtár létezésének ellenőrzése

    if [ ! -d $KONYVTAR ] ; then
    echo "Hasznalat filenev.sh SZAM KONYVTAR"
    exit 1
    fi

    #Váltás a könyvtárra
    cd $KONYVTAR


    #Fileok méretének lekérése
    OSSZMERET=0

    #mappában levő fileok vizsgálata
    for FILE in `ls`
    do
    FILEAKTUALIS=$FILE
    #ha az állomány mappa
    if [ -d $FILEAKTUALIS ] ; then
    DIRS=0
    #megszámoljuk az almappák számát
    for FILE in `ls $FILE` ; do
    #FILEBELSO=$file
    if [ -d $file ] ; then
    DIRS=$(($DIRS + 1))
    fi
    done
    #majd kiírjuk a megadott szöveget
    echo "$FILEAKTUALIS/($DIRS)"

    fi

    #ha az állomány file
    if [ -f $FILEAKTUALIS ] ; then
    #lekérdezzük a file méretét
    AKTUALISMERET=`cat $FILEAKTUALIS | wc -c`
    #ellenőrizzük, hogy a mérete nagyob, egyenlő-e mint a MERET
    if [ $MERET -le $AKTUALISMERET ] ; then
    #utolsó előtti sorának meghatározása
    SOR=`tail -2 $FILEAKTUALIS| head -1`
    #kiíratás
    echo "<---"
    echo "$FILEAKTUALIS($AKTUALISMERET)"
    echo $SOR
    echo "--->"
    #méret hozzáadása az összeshez
    OSSZESMERET=$(($OSSZESMERET+$AKTUALISMERET))
    fi
    fi

    done

    #a megfelelt fileok méretének kiiratása
    echo "Osszesen: $OSSZESMERET bajt"