Skip to content

Gennemgå og udfør handling på filer i bash

Her lige et lille eksempel på hvordan man løber filer igennem som ligger i en mappe i bash. Samtidig kan man se progress.

# loop all files and show progress
i=1
b=1
for file in mappe/*.gz
do
    echo -n "["
    for ((j=0; j<i; j++)) ; do echo -n '='; done
    echo -n '=>'
    for ((j=i; j<$res/5; j++)) ; do echo -n ' '; done
    echo -n "] $b / $res $file" $'\r'
    ((b++))
    if [ $((b%5)) -eq 0 ] ; then
       ((i++))
    fi

    gzip -d $file
done

Her har jeg valgt at løbe gennem en mappe med gzip filer og pakke dem ud.

Hvis du prøver at køre den vil du kunne se at den laver en lille fin progress bar og skriver hvor mange filer der er og hvor mange den er færdig med 🙂

Comments (0)

Skriv et svar

Back To Top